b57730431a872c5f441d647734e67591a0bd8d2d
[platform/upstream/glib.git] / NEWS
1 Overview of changes from GLib 2.29.8 to 2.29.10
2 ===============================================
3
4 * New features:
5  - g_desktop_app_info_get_nodisplay: a function that is required
6    to port gnome-menus to GDesktopAppInfo
7  - g_hash_Table_iter_replace: new function to replace a value
8    while iterating over a hash table
9  - g_utf8_substring: convenience API to extract substrings from
10    UTF-8 strings
11  - g_action_group_add_entries: convenience API for creating lots
12    of actions quickly
13  - Use eventfd instead of pipes for waking up main contexts and
14    for cancellation when available
15  - GMatchInfo is now a refcounted boxed type
16
17 * API changes in GAction:
18  - the 'set_state' entry in the GActionInterface vtable has been
19    renamed to 'change_state
20  - g_action_set_state has been renamed to g_action_change_state
21  - the 'state' property has been changed to read-only
22  - GSimpleAction can no longer be subclassed
23
24 * Bug fixes
25  647796 g_variant_new_variant is not marked as constructor
26  652072 gmain: make use of signalfd()
27  652168 Crosscompiling Fails if build<=2.24 and host >2.24
28  652750 make dist fails
29  652758 GDataInputStream: Clarify g_data_input_stream_read_line docs...
30  652822 Add a g_hash_table_iter_replace
31  652897 tiny docs clarification for g_utf8_to_ucs4_fast
32  653140 gmain: use Linux eventfd() for main context wake up
33  653429 drop AM_MAINTAINER_MODE or enable it by default
34  653484 GAsyncCallbacks should default to allow-none
35         Add missing fundamental types to the generic marshaller
36
37 * Translation updates
38  Belarusian
39  Galician
40  Russian
41
42 Overview of changes from GLib 2.29.6 to 2.29.8
43 ==============================================
44
45 * Bug fixes
46  646608 export_symbols variable for gio dynamic library is wrong
47  646635 Fix introspection of GLib
48  647930 Documentation: GDataInputStream _read_upto() version
49  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
50  651920 Improve qsort_r detection
51  651959 gbitlock: "asm goto" is not available in gcc < 4.5
52  651998 gdbus-codegen: Use relative Python imports
53  652000 Fix for gatomic.c on Windows/MSVC
54  652002 Proposal to clean up gvaluetransform.c for MSVC
55  652025 g_dbus_connection_register_object: error is not set...
56  652081 Typos in a GBinding warning message
57  652197 Improper handling of double values in GDBusMessage
58         Fix a deadlock in gobject finalization
59
60 * Translation updates:
61  Czech
62  Galician
63  German
64  Hebrew
65  Norwegian bokmål
66  Spanish
67  Uighur
68
69
70 Overview of changes from GLib 2.29.4 to 2.29.6
71 ==============================================
72
73 * Atomic operations have been rewritten from scratch to make use
74   of gcc builtins where possible. As a side-effect of this, calls
75   to g_atomic_ API with explicit casts may now be problematic; if
76   that happens to you, try first to remove the casts. Another
77   side-effect of the rewrite is that g_atomic_int_exchange_and_add
78   has been deprecated in favor of g_atomic_int_add.
79
80 * A full set of atomic operations on pointers has been added,
81   including bit locks in pointer-size locations.
82
83 * Access to quarks is now lockless
84
85 * GObject data scalability has been greatly improved
86
87 * g_data_time_format now supports alternative digits and padding
88
89 * Introspection improvements:
90  - Add a boxed type for GVariantBuilder
91  - Annotation fixes in GDBus, GVariant, g_base64_
92
93 * Bugs fixed:
94  502560 g_rand_double_range returns 'inf'
95  612729 g_mkdir_with_parents can fail if the directory already exists
96  617491 g_once() implementation is inefficient
97  619418 Add a performance test for UTF-8 decoding functions
98  619435 Make g_utf8_to_ucs4_fast() yet faster
99  626549 G_STATIC_ASSERT_EXPR
100  631231 bitlock: Fix detection and usage of futexes with Bionic
101  632294 g_queue_remove() should return a boolean
102  640518 GMainLoop has quadratic complexity when all pollfd's...
103  642026 Race condition in g_static_private_free
104  646635 Fix introspection of GLib
105  648678 g_date_time_format(): support %O flags for localized numbers
106  649480 Use MSG_CMSG_CLOEXEC in recvmsg in gio/gsocket.c
107  649506 GTestFunc et al lacking Since tag
108  649657 Don't return gboolean for functions that throw
109  649775 glib-gio-gdbuscodegen-Makefile.patch
110  649915 gsettings accepts unquoted strings longer than two characters
111  649973 gthread: build unix tests only on unix
112  649988 gdbus-codegen: Drop dependency on argparse
113  650078 forkbomb building glib/tests/protocol
114  650211 Optimization in key file parsing
115  650236 Application over DBus implements action state incorrectly
116  650345 g_key_file_has_key_full: New function to fix g_key_file_has_key...
117  650458 reduce overhead in g_object_set/get_data
118  650459 hash table consistency while calling destroy notify funcs
119  650688 enforce rules about hash table modification
120  650823 expand the set of atomic ops
121  650874 codegen chokes on docs
122  650882 use stdout instead of stderr for informational messages
123  650884 fix compilation with gcc2
124  650885 implement glib credentials on OpenBSD (hackish)
125  650935 G_GNUC_MAY_ALIAS and atomic ops
126  651009 minor documentation fix
127  651034 Regarding g_cond_wait after g_thread_pool_push in gthreadedresolver
128  651133 race condition in GDBusConnection's emit_signal_instance_in_idle_cb
129  651141 hashtable infinite loop
130  651219 fix path to true(1) on OpenBSD
131  651223 Fix some compile warnings on OpenBSD
132  651327 Minor fixes for the gsocket API
133  651467 Add pointer sized bitlocks
134  651650 gdbus: Avoid busy wait loop
135  651725 gmain: Cleanups and a new test case
136  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
137
138 * Updated translations:
139  Catalan (Valencian)
140  Esperanto
141  Hebrew
142  Hungarian
143  Russian
144  Spanish
145
146
147 Overview of changes from GLib 2.29.2 to 2.29.4
148 ==============================================
149
150 * GDBus:
151  - Includes several new types to support modeling D-Bus
152    objects and interfaces more fully, and also introduces
153    an 'object manager' pattern:
154    GDBusInterface, GDBusObject, GDBusObjectManager
155    These interfaces have client-side implementations:
156    GDBusProxy, GDBusObjectProxy, GDBusObjectManagerClient
157    And server-side implementations:
158    GDBusInterfaceSkeleton, GDBusObjectSkeleton, GDBusObjectManagerServer
159  - The new gdbus-codegen utility uses these new classes
160    to generate C code and documentation from D-Bus interface
161    descriptions in XML
162
163 * GTest:
164  - There is now a g_test_fail() function to mark
165    tests as failed
166
167 * GDesktopAppInfo
168  - Now has a binding-friendly filename property
169  - Other new API to more fully expose desktop file contents:
170    g_desktop_app_info_get_categories(),
171    g_desktop_app_info_get_generic_name()
172
173 * GHashTable:
174  - Several optimizations to reduce space consumption of
175    large hash tables, in particular tables that are used
176    to store sets.
177
178 * Unix-specific APIs:
179   GLib now installs a separate header, glib-unix.h, that is
180   meant to collect Unix-specific APIs. For now, it contains
181   g_unix_open_pipe(), g_unix_set_fd_non_blocking() for dealing
182   with pipes and fds, as well as APIs to create mainloop
183   sources which can trigger callbacks on certain Unix
184   signals (SIGTERM, SIGHUP, SIGINT).
185
186 * Bugs fixed:
187  631379 GDBus nonce-tcp test failing
188  632631 GLib-CRITICAL **: g_variant_new_string: assertion `g_utf8_validate (string, -1, NULL)' failed
189  635694 gdbus aborting due to unauthorized socket in DBUS_SESSION_BUS_ADDRESS
190  637561 Crash when using G_DBUS_SERVER_FLAGS_RUN_IN_THREAD
191  642935 g_date_time_format() prints wrong value for %z and timezone -0800
192  643134 g_dbus_message_copy
193  644941 glib-unix: New Unix-specific API
194  646013 g_hash_table_remove_all_nodes optimization
195  646309 glib cannot be cross-compilled for mingw32
196  646435 GTimeZone doesn't seem to be thread-safe
197  646957 GIO chained calls don't work with a thread default context
198  647594 README link to mailing list is broken
199  647602 Cannot connect to remote message bus via TCP
200  647746 The GSocketService documentation is incomplete.
201  647826 API: gtester: Add g_test_fail()
202  647903 GDesktopAppInfo: Add g_desktop_app_info_get_categories()
203  648416 g_app_info_create_from_commandline ignores SUPPORTS_STARTUP_NOTIFICATION
204  648423 Support G_DEBUG=trap-warnings
205  648425 GDesktopAppInfo: Add "filename" property for bindings
206  648966 Update g_unichar_iswide and g_unichar_iswide_cjk
207
208 * Updated translations
209  Norwegian bokmål
210  Spanish
211  Turkish
212  Uighur
213
214
215 Overview of Changes from GLib 2.28.0 to 2.29.2
216 ==============================================
217
218 * GApplication
219  - The documentation has been enhanced and clarified
220  - An opt-out for uniqueness has been added: G_APPLICATION_NON_UNIQUE
221  - GApplication now syncs settings before g_application_run() returns
222
223 * GDBus
224  - Interface lookups are now happening in constant time
225  - Signature checking and handling of various unexpected
226    situations has been improved
227
228 * GVariant
229  - The format accepted by the GVariant parser has beend documented
230  - GVariant accepts G_VARIANT_TYPE_VARDICT for a{sv}
231
232 * GDateTime:
233  - The return value of g_datetime_compare() has been fixed to
234    match strcmp() semantics
235  - In order to handle problems with changing timezones, a GTimeZoneMonitor
236    has been added to GIO, and g_time_zone_refresh_local() can be
237    called to update the cached information about the local timezone
238
239 * GOption now uses /proc/self/cmdline to set the program name instead
240   and only falls back to "<unknown>" if that is unavailable
241
242 * GSettings:
243  - The schema compiler now warns about references to non-existing schemas
244
245 * Commandline utilities are now fully translated
246
247 * Signals can now indicate that collecting their arguments must
248   always happen, even in the absence of connected signal handlers,
249   using the G_SIGNAL_MUST_COLLECT flag.
250
251 * Bugs fixed:
252  635099 Memory leak in gdbus introspection when parsing xml
253  640489 $ and ^ do not match lines if G_REGEX_MULTILINE|G_R...
254  642042 Overriding GDBus org.freedesktop.DBus.Properties im...
255  642052 g_timeout_add(_seconds) cannot handle large intervals
256  642490 notify_desktop_launch() "g_variant_new_bytestring:...
257  613269 g_type_get_qdata() doesn't work as I expected on subtypes
258  624943 G_VALUE_NOCOPY_CONTENTS is undocumented
259  637738 object_interface_check_properties never actually executes
260  638185 GIOCondition should be annotated as "flags"
261  639478 GDBusServer's g_dbus_server_new_sync() function should just...
262  641755 Add g_settings_get/set_uint() helpers
263  641768 dconf gsettings backend silently drops writes if it can't...
264  642797 g_app_info_get_default_for_type() broken for subtypes
265  642825 Unnecessary assertion failure in g_option_context_parse()
266  642944 NULL key lookup using g_hash_table_lookup_extended()
267  643074 Incorrect documentation for g_socket_receive() and g_socket...
268  643197 g_application_id_is_valid docs imply no valid ids
269  643468 GApplication docs: Warn that handling "command-line" means...
270  643478 GApplication::local_command_line vfunc documentation seems wrong
271  643624 Can g_variant_unref() on an already free'd variant
272  643649 g_application_run() should say that argc/argv can be NULL
273  643780 shouldn't need to create an action group to use actions...
274  643795 g_timeout_add_seconds fires with intervals 1 second longer...
275  644309 Program name is not set when using GtkApplication
276  644428 Crash in failure section of g_markup_collect_attributes()
277  644465 undefined reference to `_usleep'
278  644552 g_timeout_add_seconds(1, ...) may have a latency of up to 2...
279  644607 Correct internal definition of C_()
280  645789 annotations for g_file_*_contents
281  646039 g_settings_list_children() returns child that cannot be opened
282  646310 Accept range with only min or max
283  646420 g_dbus_method_invocation_get_parameters() docs should say...
284  646843 occasional abort on autologin
285  646985 add G_APPLICATION_NON_UNIQUE flag
286  647579 gsettings: Implement reset-recursively
287  647600 gsettings description has typo
288
289 * Translation updates
290  Afrikaans
291  Bulgarian
292  Bengali India
293  British English
294  Bulgarian
295  Catalan
296  Czech
297  Danish
298  French
299  Galician
300  German
301  Greek
302  Gujarati
303  Hebrew
304  Hungarian
305  Italian
306  Japanese
307  Korean
308  Lithuanian
309  Polish
310  Portuguese
311  Romanian
312  Serbian
313  Simplified Chinese
314  Spanish
315  Swedish
316  Traditional Chinese
317  Uighur
318  Vietnamese
319
320
321 Overview of Changes from GLib 2.27.93 to 2.28.0
322 ===============================================
323
324 * Bugs fixed:
325 641363 GInitable documentation isn't clear about that finalize...
326 641395 Add more data about the origin application to the "Lau...
327 641411 gdesktopappinfo signals lost if it's the session bus...
328 641477 glib-mkenums uses unportable #! line
329 641572 Add @EXEEXT@ to pkgconfig binary name
330 641688 glib installs GSettings.html and gsettings.html
331
332 * Translation updates:
333  Galician
334  Italian
335  Korean
336  Punjabi
337
338
339 Overview of Changes from GLib 2.27.92 to 2.27.93
340 ================================================
341
342 * Bugs fixed:
343  637013 gio/gdbusmessage.c fails to compile on Solaris
344  640192 Error creating a Gio.Settings object through py...
345  640261 Minimum version for external pcre needs to be..
346  640262 GActionGroup contains redundant TYPE macros
347  640436 Make load_user_special_dirs() resistant to non...
348  640695 g_key_file_load_from_file() mishandles a CR-LF...
349  640724 can't compile gio due to format string issues
350  640725 can't compile tests due to format string issue
351  640807 improve GVariant behaviour with invalid pointers
352  640823 wrong documentation for g_source_add_child_source
353
354 * Translation updates:
355  Bulgarian
356  Galician
357  Hebrew
358  Norwegian bokmål
359  Spanish
360  Traditional Chinese
361
362
363 Overview of Changes from GLib 2.27.91 to 2.27.92
364 ================================================
365
366 * Update to Unicode 6.0
367
368 * Update PCRE to 8.12
369
370 * Bugs fixed:
371  637696 g_unix_connection_send_fd() doesn't work
372  638872 null settings backend bug
373  640042 GtkApplication's warning about not connecting...
374
375 * Translation updates:
376  Arabic
377  Basque
378  Estonian
379  Greek
380
381 Overview of Changes from GLib 2.27.90 to 2.27.91
382 ================================================
383
384 * Bugs fixed:
385  638838 gdesktopappinfo: Don't crash if we don't have a desktop filename
386  638894 Splitting on \s* gives no result
387  639064 Update gschema.dtd
388  639084 Copy/paste error in GSettings::writable-changed signal
389  639177 SIGSEGV for GApplications with G_APPLICATION_IS_SERVICE
390
391 * Translation updates:
392  Estonian
393  Galician
394  Indonesian
395
396
397 Overview of Changes from GLib 2.27.5 to 2.27.90
398 ===============================================
399
400 * Test reports created by gtester-report can now
401   include revision information
402
403 * The g_desktop_app_info_launch_* family of functions
404   now emit a DBus signal when an application is launched.
405   Additionally, there is a new variant
406   g_desktop_app_info_launch_uris_as_manager(), which
407   gives more control over the launched process.
408
409 * The memory and null GSettings backends are now available
410   as public API
411
412 * g_get_locale_variants() is a new function that returns a
413   list of variants of a locale identifier
414
415 * Bugs fixed:
416  587898 I/O timeouts for GSocket
417  606960 gio: Add extension point for informing parties...
418  631980 Handle an optional <revision> node in the report...
419  634569 Document that g_variant_builder_add_value consumes...
420  635998 Make _g_compute_locale_variants public
421  636806 Add g_{memory,null}_settings_backend_get_default
422  637262 Need a binary DER version of ::accepted-cas
423  637544 Skip fsync() on btrfs
424  637720 void functions should not return a value.
425  637738 object_interface_check_properties never actually...
426  637759 GIOChannel: fix a crash in g_io_channel_read_chars()
427  637852 Updates to glib.vsprops file for MSVC 2008 builds...
428  637858 Updates to test/testglib.c...
429  638349 parameter name of g_variant_new_* may conflict...
430
431 * Translation updates:
432  Hebrew
433  Norwegian bokmål
434  Simplified Chinese
435  Spanish
436  Swedish
437  Uyghur
438  Vietnamese
439
440
441 Overview of Changes from GLib 2.27.4 to 2.27.5
442 ==============================================
443
444 * Network support:
445  - Add g_tls_certificate_verify() to verify a certificate
446  - Add GTlsConnection:use-system-certdb
447  - Other TLS api additions
448
449 * GIO:
450  - Add g_io_stream_splice_async()/_finish() to splice two iostreams
451  - Add g_emblemed_icon_clear_emblems() and make GEmblemedIcon derivable
452  - Remove GPeriodic; it did not receive the necessary review and
453    integration work to declare it stable
454
455 * GSequence:
456  - New methods g_sequence_lookup() and g_sequence_lookup_iter()
457
458 * Bugs fixed:
459  617254 Missing g_sequence_lookup
460  632544 g_dbus_connection_send_message can not send a locked message...
461  633350 g_hostname_to_ascii() ignores non-ascii dots
462  634583 Better error reporting for g_variant_parse()
463  635007 gsetting enum rule don't work for out-of-srcdir builds
464  635626 GDBus message idle can execute while flushes are pending
465  636100 Can't read GSettings:backend property
466  636305 Typo on g_queue_remove_all() function description
467  636311 appinfo: tweak application positioning for content-types
468  636351 g_simple_async_result_is_valid lacks a version tag
469  636387 gdb autoload files shadow the "dir" builtin
470  636673 g_simple_async_report_error_in_idle should allow object...
471  637147 Add a "delay-apply" property to GSettings
472  637171 emblemedicon: add g_emblemed_icon_clear_emblems()
473  637237 gapplication: plug a memory leak
474
475 * Translation updates:
476  Estonian
477  Galician
478  Hebrew
479  Norwegian bokmål
480  Simplified Chinese
481  Spanish
482  Traditional Chinese
483  Vietnamese
484
485
486 Overview of Changes from GLib 2.27.3 to 2.27.4
487 ==============================================
488
489 * GIO
490  - Mounts are treated as hidden if they have a path element
491    that starts with a dot
492  - GAppInfo gained API to differentiate between recommended
493    and fallback mime handlers
494  - g_cancellable_create_source: creates a GSource that triggers
495    when the GCancellable is canceled
496  - GPollableInput/OutputStream: Interfaces for pollable streams
497  - TLS support has landed, with an extension point that is
498    implemented in glib-networking
499
500 * GLib
501  - Mainloop sources can now have 'child sources'
502  - g_get_runtime_dir: New function to return the XDG_RUNTIME_DIR
503
504 * Bugs fixed:
505  530786 GFileMonitor "changed" signal underdocumented
506  588189 TLS support for GSocket*
507  630357 g_object_new_valist uses uninitialized memory
508  630559 typo in public string in gsocks: 'The SOCKSv5 require...
509  632445 Documentation refers to removed GNOME 2.0 porting guide
510  634239 Child GSources
511  634241 Add pollable input/output streams
512  634504 allow passing a NULL emblem to g_emblemed_icon_new()
513  634613 unsufficient g_get_user_runtime_dir() documentation
514  635640 schema should inherit gettext-domain from schemalist
515  635768 Protect g_file_monitor_set_rate_limit() against negative...
516  635882 Fix the wrong-category schema test
517  635187 Wrong type of GVariant received in an action...
518
519 * Updated translations:
520  Galician
521  Italian
522  Norwegian bokmål
523  Uyghur
524
525
526 Overview of Changes from GLib 2.27.2 to 2.27.3
527 ==============================================
528
529 * The GTimeSpec type that was introduced in the 2.27.2 has been
530   dropped again in favour of APIs that return microseconds as
531   64-bit integer.
532   Affected functions:
533   g_source_get_time
534   g_periodic_unblock
535   g_get_monotonic_time
536   g_get_real_time
537   The similar GTimeVal struct is still around, but its use is
538   discouraged.
539
540 * GTimer is now using monotonic time unconditionally
541
542 * There are some new functions to facilitate error reporting
543   in async GIO APIs:
544   g_simple_async_result_take_error
545   g_simple_async_result_new_take_error
546   g_simple_async_report_take_gerror_in_idle
547
548 * There is new convenience API to us GVariant dictionaries:
549   g_variant_lookup
550
551 * It is now possible to delay sending match rules to the
552   D-Bus daemon in GDBus:
553   G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE
554
555 * Support has been added for XDG_RUNTIME_DIR:
556   g_get_user_runtime_dir
557
558 * Various fixes for Win64/MSVC builds have been committed
559
560 * Bugs fixed:
561  620263 Add g_clear_object, g_clear_pointer, g_clear_boxed
562  633075 update Project Files and sources for MSVC 2008/C89
563  633381 gsettings Makefile rules should handle empty list...
564  633685 Use g_simple_async_result_{new_,}take_error
565  633686 Add g_simple_async_report_take_gerror_in_idle
566
567 * Translation updates:
568   Belarusian
569   Galician
570   Hebrew
571   Punjabi
572   Spanish
573
574
575 Overview of Changes from GLib 2.27.1 to 2.27.2
576 ==============================================
577
578 * GApplication
579  - Export actions over DBus and support activating them from remote instances
580  - Support environment passing
581
582 * GSettings
583  - The gsettings utility has a list-recursively command
584  - The gsettings utility has commandline completion for enum values
585
586 * GLib is now linked against librt and uses monotonic time for
587   timeouts and GPeriod sources. GSource has a new g_source_get_time()
588   which returns monotonic time, and g_source_get_current_time() has
589   been deprecated
590
591 * Bugs fixed:
592  158725 free linked list with data
593  626320 GVariant: Avoid locking in g_variant_get_child_value() if possible
594  629247 add gsimpleasyncresult methods to take over a GError
595  629274 GNetworkService does not do fallback when there is no SRV record
596  631264 gsettings-tool choice/range support
597  631482 g_date_time_from_instant: 1000000000000000000
598  632169 docs for manual use of gsettings-data-convert
599  632571 Add equivalent to gconftool-2's -R option
600  633115 GSettings m4 doesn't fail the build for broken schemas
601  633206 Default g_application_local_command_line() doesn't set exit_status...
602  633339 support more complex gapplication setups
603  633356 Make timeout G_MAXINT mean "no timeout"
604
605 * Translation updates:
606  Catalan (Valencian)
607  Indonesian
608  Japanese
609
610
611 Overview of Changes from GLib 2.27.0 to 2.27.1
612 ==============================================
613
614 * GDateTime now has full week number support.
615   New API: g_date_time_get_week_numbering_year
616
617 * The GSettings schema compiler will now skip over
618   broken .xml schema files instead of aborting altogether
619
620 * GSettings now works properly on bigendian systems
621
622 * GSettings has more complete support for ranges
623   New API:
624     g_settings_get_range
625     g_settings_range_check
626   The gsettings commandline tool supports ranges too.
627
628 * GApplication has been rewritten; see the API docs for details
629   and examples. The action support is not complete yet.
630
631 * The GLib mainloop has gained 'dispatch to context' functionality,
632   which can replace manually created idles in many cases.
633   New API:
634     g_main_context_invoke
635     g_main_context_invoke_full
636
637 * The gio-desktop-app-info-lookup extension point has been
638   removed from GIO. GIO now uses x-scheme-handler mimetypes when
639   looking for default applications.
640
641 * On win32, make g_get_user_data_dir() return the CSIDL_LOCAL_APPDATA
642   folder on Windows, and not CSIDL_PERSONAL. This matches what Qt does,
643   and has been widely requested. Also make g_get_user_config_dir() return
644   this and not the (roaming) CSIDL_APPDATA folder.
645
646 * A periodic event clock has been added in GIO: GPeriodic. Note that this
647   API is still experimental and expected to undergo changes before it
648   will be incorporated into a stable GLib release. Use at your own risk.
649
650 Bug fixes:
651  613822 gobject signal connect/disconnect not thread safe
652  618737 "dispatch to context" functionality
653  620710 g_get_user_data_dir() uses CSIDL_PERSONAL and not CSIDL_APPDATA
654  623400 acquire context before dispatching
655  627126 gsettings schema files don't get installed on FreeBSD
656  627171 g_socket_new_from_fd() doesn't set the right protocol
657  628876 Wrong error description
658  628937 gracefully handle broken schemas
659  629274 GNetworkService doesn't fallback when there is no SRV record
660  629289 g_error() used wrong, produces core dump
661  629687 leaks class refcount in gsocketcontrolmessage
662  629849 GLib-CRITICAL **: g_source_get_context: assertion `!SOURCE_...
663  629945 GDBus deadlock in g_bus_get_sync()
664  630000 g_date_time_difference
665  630077 GDateTime week number support
666  630185 Allow NULL strings in g_quark_try_string()
667  630797 docs mention non-existent g_object_dispose()
668  630968 gschema-compile problems on power g5
669  631263 GSettings needs range/choice APIs
670  631264 gsettings-tool choice/range support
671  631379 GDBus nonce-tcp test failing
672  631410 Port gapplookupgconf.c to using x-scheme-handler/
673  632884 Possible deadlock in g_object_remove_toggle_ref()
674
675 Transation updates:
676  Basque
677  Brazilian Portuguese
678  British English
679  Bulgarian
680  Czech
681  Dutch
682  Estonian
683  French
684  Galician
685  German
686  Greek
687  Hebrew
688  Hungarian
689  Japanese
690  Lithuanian
691  Polish
692  Portuguese
693  Romanian
694  Simplified Chinese
695  Slovenian
696  Spanish
697
698
699 Overview of Changes from GLib 2.25.15 to GLib 2.27.0
700 ====================================================
701
702 Build:
703   - massive restructuring to reduce #include abuse
704   - tweaks to silence some harmless compiler warnings
705   - rename gschema-compile.c to glib-compile-schemas.c
706   - Windows fixes
707   - fix building with zlib < 1.2.4 on win32
708
709 GDateTime:
710   - better msgctxt for translating month and weekday names
711   - API is changed quite a lot, implementation is improved
712   - GTimeZone is now exposed
713
714 GObject:
715   - make ordering for overridden interface properties consistent
716   - ->priv structures are limited to 64k but this was not documented,
717     and exceeding this limit produced bad results.  Add docs and enforce
718     the limit properly.
719   - add g_object_class_install_properties() to install multiple
720     properties in one go
721   - improve debugging output for GValue containing G_TYPE_STRV
722
723 GIO:
724   - fix priority sorting of GIO extensions
725   - add GCredentials support on FreeBSD
726   - fix support for IPv6 addresses in URI parsing functions
727   - GSocketClient fixes for when g_socket_connect succeeds immediately
728   - clarify string encoding for GFile constructors in docs
729   - new functions g_data_input_stream_read_upto{,async,finish}
730   - tweak confusing documentation for g_output_stream_write()
731
732 GDBus:
733   - GDBusMessage can now be locked and copied (like in libdbus)
734   - GDBusConnection filter function API has changed again
735   - GDBusServer: ::new-connection now declares if the connection was claimed
736   - add a partial workaround for GObject bug 627724.
737   - very many memory leaks fixed
738
739 GVariant:
740   - check for size == 0 in g_variant_get_bytestring to avoid a crash
741     when attempting to get_bytestring() from an empty array
742   - improve gobject-introspection annotations
743
744 GSettings:
745   - add GSettings Windows registry backend
746   - some internal tweaks to the backend API
747   - remove g_settings_list_items
748   - add g_settings_list_children and _list_keys to replace it
749   - add schema compiler restrictions for dealing with lists
750   - don't automatically emit value changed signals on writability
751     changes
752
753 Other:
754   - constify the 'parser' vtable param to g_markup_parse_context_push()
755   - plug many memory leaks in test cases
756
757 Bugs closed:
758   50076 Time API to go with date API
759  584284 g_data_input_stream_read_until_async different from sync version
760  624546 Modification of GDBusMessage in filter function
761  626919 Let g_object_class_install_property() return the installed GParamSpec*
762  628029 GDateTime missing get_week_of_year method
763  628253 Interface properties not listed in a consistent order
764  628331 Plug lots of mem leaks in gio test suite
765  628345 Plug a mem leak
766  628436 Plug a mem leak
767  628505 Fix building with zlib < 1.2.4 on win32
768  628839 [PATCH] datetime: Rename shadowing variables
769  628904 [PATCH] Add credential support for FreeBSD and fix a socket issue
770  628952 incorrect glib_major_version and other variables on cygwin.
771  629192 g_strdup_value_contents(): dump GStrv more usefully
772  629251 g_socket_client_async_connect_complete: assertion failed
773  629259 Failed to connect to "::1"
774  629328 g_markup_parse_context_push doesn't respect const structs
775  629429 month "May" short and full form same with "GDateTime" msgctxt
776  629689 GDBusConnection leaks its GCredentials
777  629698 Segfault in g_variant_get_bytestring() 
778
779 Updated translations:
780   Arabic
781   Armenian
782   Basque
783   British English
784   Czech
785   Finnish
786   Galician
787   German
788   Hungarian
789   Indonesian
790   Japanese
791   Lithuanian
792   Norwegian bokmål
793   Polish
794   Portuguese
795   Punjabi
796   Simplified Chinese
797   Slovenian
798   Spanish
799   Swedish
800   Swedish
801   Traditional Chinese
802
803 Overview of Changes from GLib 2.25.14 to GLib 2.25.15
804 =====================================================
805
806  * GIO
807   - Memory leak fixes
808   - The GZip(De}Compressor can now process header information
809   - Support for network proxies has been added, with the GProxy
810     interface and the gio-proxy-resolver extension point. GIO
811     includes SOCKSv4 and SOCKSv5 implementations, and libproxy
812     is also going to provide an implementation of this extension
813     point.
814   - There are GAction and GActionGroup interfaces now, which will
815     be used in GApplication in the near future.
816
817  * GObject
818   - There are now convenience macros for defining boxed and
819     pointer types
820
821  * GDBus
822   - Memory leak fixes
823   - GDBusProxy for well-known names can now auto-restart
824     the service if the name owner disapperas
825   - Filter functions are now allowed to modify messages
826
827  * GLib
828   - GDateTime is a replacement for GDate that supports time
829     and timezone information.
830
831  * Bugs fixed:
832   50076 Time API to go with date API
833  449565 Add G_DEFINE_BOXED_TYPE()
834  617691 Add GZIP header processing to GZlibCompressor/GZlibDecompressor
835  622184 add g_memory_output_stream_steal_data
836  624546 Modification of GDBusMessage in filter function
837  627088 Build failure in gdbus-peer.c on FreeBSD
838  627181 save a memdup
839  627182 Plug a mem leak in the gdbus-connection test
840  627187 Plug some gdbus mem leaks
841  627188 gdbus-non-socket test occasionally fails
842  627252 G_OPTION_FLAG_NO_ARG is only for callback options
843  627392 gdbus commit 8a3a4596 breaks win32 compile
844  627407 FTBFS on !linux UNIX platforms
845  627604 String error: 'that' twice in a row
846  627969 ABR in g_file_open_tmp
847  628084 gdbus-peer fails with assertion
848  628193 Miscellaneous string fixes
849  628296 abort() in gsocketconnection.c
850  628309 Plug a mem leak in GConverterOutputStream
851  628317 GEmblemedIcon:equal implementation is buggy
852  628323 Fix invalid reads
853  628327 Plug a mem leak
854  628328 Plug a mem leak
855  628329 Don't leak the FD list
856  628324 Invalid reads in gdbus-export test
857
858  * Updated translations:
859   British English
860   Danish
861   Galician
862   Hebrew
863   Punjabi
864   Serbian
865   Spanish
866   Traditional Chinese
867
868
869 Overview of Changes from GLib 2.25.13 to GLib 2.25.14
870 =====================================================
871
872 * GDBus
873  - Make the closure variants of GDBus apis work
874  - Make error unregistration work
875  - Use async IO in the IO thread (626748)
876
877 * GIO
878  - Make g_simple_async_result_is_valid work without source (626208)
879  - GSocketClient: add a timeout property
880  - Fix memory leaks in GSocketClient
881  - Handle async vs. sync correctly in GSocketConnection stream (616458)
882  - Declare stream base classes as abstract
883  - Clarify semantics of g_output_stream_write() (627071)
884
885 * Other
886  - Improve test coverage for GDBus, GRegex, GAsyncResult
887  - Drop dead code in pcre, xdgmime
888  - Fix a race condition in gtester (578295)
889  - Avoid an extra allocation in GAsyncQueue (626704)
890  - Add test case for non-socket GIOStream (626841)
891  - More explicit GVariant docs (622770)
892  - Imroved docs for GAsyncInitable and GSimpleAsyncResult (602417)
893
894 * Translation updates:
895  - Galician
896  - Norwegian bokmål
897  - Punjabi
898  - Simplified Chinese
899  - Swedish
900
901
902 Overview of Changes from GLib 2.25.12 to GLib 2.25.13
903 =====================================================
904
905 +-------------------------------------------------------------------+
906 |   WARNING: There have been no breaks in API or ABI.  Weird, eh?   |
907 +-------------------------------------------------------------------+
908
909 The primary purpose of this release is to fix a serious problem with
910 glib 2.25.12: glibconfig.h (as generated on a Fedora amd64 system) was
911 being distributed in the tarball.  It was being used to build some parts
912 of glib on other systems (eg: 32bit ones).  This was causing some very
913 serious problems.
914
915 There have been many other improvements, however:
916
917  Build and testing:
918   - vastly improved test coverage
919   - old tests moved to the gtester framework
920   - gtester Makefile modified so that the tests only run once
921   - cleanup of how we handle includes while building glib
922
923  GVariant:
924   - add a g_return_if_fail (utf8) to g_variant_new_string()
925
926  GDBus:
927   - perform extra sanity checks when serialising messages
928   - add API to query and set the byteorder of a GDBusMessage
929   - improve debug output, add some extra options
930   - if exiting due to the bus disconnecting us, print an error message
931     explaining why
932   - sort property names correctly
933   - don't bother sending RemoveMatch when we will close the connection
934     anyway
935   - use effective uid/gid for credential passing
936
937  GSettings:
938   - add G_SETTINGS_BIND_INVERT_BOOLEAN for inverting boolean bindings
939     without mapping functions
940   - mark all strings in the schema compiler for translation
941
942  Binding:
943   - improve closure support for bindings
944   - copy GSettings INVERT_BOOLEAN flag
945
946  Other:
947   - fix another complicated GCancellable deadlock possibility
948
949 Bugs closed:
950  599590 glib build doesn't look for correct pkg-config
951  619026 avoid warning in gutils.h when using gcc with -Wconversion
952  624739 Please fix POTFILES.in
953  625472 Valgrind claims uninitialized bytes used
954  625500 g_date_set_time_val documentation doesn't mention local time
955  625628 GDBusProxy: wrong property name sorting
956  625753 Incorrect flags used in g_dbus_connection_call_sync()
957  625827 Expand documentation about error quark naming
958  625988 builddir != srcdir issues
959  626107 glibconfig.h is being disted
960
961 Updated translations:
962  French
963  Galician
964  Hebrew
965  Norwegian bokmål
966  Spanish
967
968
969 Overview of Changes from GLib 2.25.11 to GLib 2.25.12
970 =====================================================
971
972 +-------------------------------------------------------------------+
973 | WARNING: There have been many API changes in GDBus -- sending     |
974 | messages, subscribing to signals, closing connections and         |
975 | registering subtrees are affected.  The ABI for GSettingsBackend  |
976 | has also been changed.  For both reasons, a new dconf release is  |
977 | required (and will be along soon).                                |
978 +-------------------------------------------------------------------+
979
980 Build:
981   - cleanup automake setup
982   - rename configure.in to configure.ac
983   - various docs fixups
984   - move glibconfig.h to glib/
985   - disable dtrace support on Mac OS (which has incompatible 'dtrace')
986
987 GSettings:
988   - add support for vendor override files (to change the default values
989     in a schema)
990   - change GSettingsBackend vtable
991   - add g_settings_reset()
992   - support binding to G_TYPE_STRV properties
993
994 GDBus:
995   - many bug fixes, including a serialisation fix
996   - stop handling incoming connections as soon as stop() is called
997   - proper support for file descriptor passing
998   - new flags parameter for sending messages
999   - new flags parameter for subscribing to signals
1000   - always reset the message serial when sending a message unless
1001     G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL is given
1002   - constness fixes for introspection structures
1003   - clean ups to subtree registration API
1004
1005 Other:
1006   - fix divide by zero bug in g_malloc_n functions
1007   - GIO: don't blindly assume that SOCK_CLOEXEC is supported
1008   - make GObject property notify freezes threadsafe
1009   - GIO: clean up credentials passing
1010   - GApplication: make default-quit not apply if register=FALSE
1011   - GIO: add annotations for gobject-introspection
1012
1013 Bugs closed:
1014  166020 use GAtomic for refcounting
1015  617483 Credentials passing
1016  622005 [GApplication] no way to modify the "default-quit" property
1017  623293 vendor override files
1018  623810 Message serialization bug
1019  623815 Don't check sender for GDBusProxy objects where name is not set
1020  624473 GDBusSubtreeIntrospectFunc return type
1021  624483 GDBusSubtreeEnumerateFunc clarification
1022  624484 GDBusSubtreeDispatchFunc clarification
1023  624754 gdbusaddress.c missing sys/wait.h
1024  624968 div by zero in g_malloc_n family
1025  624991 GSettings mapping for G_TYPE_STRV 
1026  625383 Add missing GI annotations
1027
1028 Updated Translations:
1029  Armenian
1030  Galician
1031  German
1032  Hebrew
1033  Kazakh
1034  Romanian
1035  Simplified Chinese
1036  Spanish
1037
1038 Overview of Changes from GLib 2.25.10 to GLib 2.25.11
1039 =====================================================
1040
1041 +-------------------------------------------------------------------+
1042 | WARNING: There have been minor API changes in GDBus and GVariant. |
1043 | These API changes will not affect many users, but they do require |
1044 | a new version of GTK+ to be installed.                            |
1045 +-------------------------------------------------------------------+
1046
1047 Build:
1048   - add a --disable-Bsymbolic configure flag to disable linking with
1049     -Bsymbolic-functions
1050   - this release sees the complete removal of the old 'g*alias' hacks
1051   - honour the NOCONFIGURE environment variable from autogen.sh
1052   - use proper feature test macros for isnan
1053   - use pkg-config to check for zlib
1054   - add ACLOCAL_AMFLAGS to Makefile.am
1055
1056 GDBus:
1057   - hide Class and instance structures for all GDBus types except
1058     GDBusProxy.  This breaks API by preventing subclassing, but probably
1059     nobody was doing that.
1060   - add new GDBusConnection call to support flushing all pending
1061     outgoing messages
1062   - change the register_object API to add a reference to the
1063     GDBusInterfaceInfo object so the caller need not keep it alive
1064     themselves
1065   - don't rewrite the serial number when sending messages that already
1066     have a serial number
1067   - better error checking for DBUS_SESSION_BUS_ADDRESS environment
1068     variable
1069   - switch to g_parse_debug_string for G_DBUS_DEBUG and add a lot of new
1070     flags
1071   - add support for temporarily freezing a freshly created
1072     GDBusConnection.  Do this until after the ::new-connection signal
1073     has finished running on GDBus services.
1074   - never require non-closed connections (the user is incapable of doing
1075     this due to the obvious race)
1076   - remove weird/misleading redundant check on NameOwnerChanged signal
1077   - emit GDBusProxy::g-properties-changed on NameOwnerChanged
1078
1079 GVariant:
1080   - the 'g_variant_{new,get}_byte_array' APIs have been removed
1081   - g_variant_{new,get,dup}_bytestring has been added, with different
1082     arguments and different behaviour
1083   - g_variant_{new,get,dup}_bytestring_array has been added, doing
1084     essentially the same thing as the 'strv' functions, but with byte
1085     strings instead of utf8 strings
1086   - G_VARIANT_TYPE_BYTESTRING ('ay'), BYTESTRING_ARRAY ('aay') and
1087     STRING_ARRAY ('as') constants have been added
1088   - the undocumented behaviour that g_variant_get_strv() deserialised
1089     arrays of object paths or signature strings has been dropped
1090   - additional varargs support for converting bytestrings or bytestring
1091     arrays with ^ay ^aay ^&ay and ^a&ay
1092   - improved gobject-introspection annotation
1093   - fix a problem with GBuffer calling g_slice_free for the wrong type
1094   - fix leaks in the type inferencing code of the parser
1095
1096 GSettings:
1097   - improved documentation
1098   - updated schema XML DTD, now xincluded into the docs
1099   - added support for schemas that extend other schemas (using the
1100     'extends=' attribute).  Values of keys in the base schema can be
1101     overridden using <override>.
1102   - added theoretical support for lists (using the 'list-of=' attribute)
1103   - lots of new tests
1104   - add support for flags (implemented similarly to enums)
1105   - add support for generating .enums.xml files to gsettings.m4:
1106       gsettings_ENUM_NAMESPACE = org.example.myapp
1107       gsettings_ENUM_FILES = ../path/to/*.h
1108     will generate org.example.myapp.enums.xml with mappings for all
1109     enums and flags in the specified .h files.
1110   - warn with g_message() if the 'memory' backend is used by default
1111     (ie: because no other GSettings backends are installed)
1112   - fix get_property() for GSettings::schema
1113   - command line tool: fix a bug that prevented non-basic values from
1114     being set due to a premature free
1115   - command line tool: bash completion support
1116   - chain up in _finalize
1117   - add a new g_settings_get_mapped API to read settings that require
1118     post-processing
1119   - retry with the translated or schema default value if the
1120     GSettingsBindGetMapping function fails
1121   - schema compiler: never fail due to empty schema directories (but
1122     warn)
1123   - peek rather than ref/unref the GEnumClass in the mapping function
1124   - schema compiler: compile *.enums.xml before *.gschemas.xml to ensure
1125     that we have all the enums that the schemas may reference
1126   - schema compiler: improve accuracy of line numbers in error reports
1127   - fix crashes in the keyfile backend caused by invalid group names in
1128     the keyfile
1129
1130 Other:
1131   - always intern GBinding prop names
1132   - base64: remove asserts preventing conversion of empty strings
1133   - document NULL special-cases for GValueArray
1134   - GNode docs improvements
1135   - improve detection of 'system internal' mounts
1136   - fix leaks in the inotify GFileMonitor implementation
1137   - annotate all custom GIO GSources to improve debugging (e.g. using
1138     SystemTap)
1139
1140 Tests:
1141   - Turn on glibc malloc checking features for make check
1142   - improvements for GSettings tests, plus new tests
1143   - improved tests for GKeyfile
1144   - new tests for GDir, GSList, GSList, GAppLaunchContext,
1145     CharsetConverter, GIcon, ...
1146   - move some tests to GTester (tree tests, uri tests)
1147   - generally, really an awful lot of new tests
1148   - don't try to allocate 2gigs of memory anymore for the array test
1149
1150  552363 g_value_array_{insert,prepend,append}'s special cases for NULL
1151  561248 Improve return value description from g_node_prev/next_sibling()
1152  570036 Add ACLOCAL_AMFLAGS to Makefile.am
1153  576833 g_sprintf add a reference to g_strdup_printf
1154  576854 g_strconcat() documentation should provide a hint about bad l10n
1155  582227 reference: add other URI functions to 'URI Functions' section
1156  599223 should provide g_spawn_* variants that take a GAppLaunchContext
1157  610784 array test failing
1158  613057 Leak in inotify GFileMonitor implementation
1159  620536 Annotate all custom GIO GSource using g_source_set_name
1160  620913 More control with G_DBUS_DEBUG
1161  622124 implement flags
1162  622127 GSettings extended key validation
1163  622128 retry with default value for failed mapping
1164  622294 More annotations for GVariant
1165  622565 glib-compile-schemas fails when no schemas
1166  622600 Fix missing prototype warning
1167  622813 gsettings mapping & enum buglet
1168  623142 Ensure ::new-connection runs before processing D-Bus messages
1169  623143 Never require non-closed connections
1170  623319 use g_parse_debug_string for dbus debug flags
1171  623401 process enums first
1172  623402 schema compiler reports wrong line numbers
1173  623407 g_keyfile_settings_backend_new crashes with the key "/"
1174  623473 zlib should be checked with pkg-config
1175  623537 GDBusProxy has weird checking on NameOwnerChanged
1176  623538 GDBusProxy::g-properties-changed emission for corner cases
1177  623692 directory with file at multiple MLS levels may display empty
1178  623720 gschema.dtd does not contain enum definitions
1179  623770 quoting of expand_macro in gdesktopappinfo.c
1180  623772 gdesktopappinfo.c, function child_setup
1181  623780 g_unix_is_mount_path_system_internal
1182  623954 g_settings_finalize
1183  623955 Dubious return values
1184
1185 Updated translations:
1186  Galician
1187  Hebrew
1188  Norwegian bokmål
1189  Spanish
1190
1191 Overview of Changes from GLib 2.25.9 to GLib 2.25.10
1192 ====================================================
1193
1194 +----------------------------------------------------------------+
1195 | WARNING: There have been API changes in GDBus. Users of these  |
1196 | APIs will need to be adapted.  In particular, a new release of |
1197 | dconf is required to go along with this one.  There has also   |
1198 | been a change in the GSettings backend API used for keyfiles.  |
1199 +----------------------------------------------------------------+
1200
1201 * GDBus:
1202  - add direction parameter to filter functions (API change)
1203  - allow calling other interfaces with a GDBusProxy
1204  - padding added to class struct fields (ABI change)
1205  - fixes for closures-based functions
1206
1207 * GVariant:
1208  - new is_floating() call
1209  - add g_value_take_variant() call (required for marshallers)
1210
1211 * GSettings:
1212  - support for binding GParamSpecEnum properties
1213  - ifelse-style condition support for GLIB_GSETTINGS m4 macro
1214  - remove gsettings-schema-convert tool (now in GConf)
1215  - allow introspection of all installed schemas
1216  - allow introspection of the keys in a schema
1217  - rewrite keyfile backend (API change)
1218
1219 * GNIO:
1220  - don't implicitly close GSocket until it is destroyed
1221  - windows fixups
1222
1223 * Other:
1224  - allow GChecksum to take (NULL, 0) for data/length
1225  - GRelation and GCompletion are now deprecated
1226  - introduce G_PARAM_DEPRECATED and G_ENABLE_DIAGNOSTIC
1227  - add working directory to GApplication platform data
1228  - lots of documentation cleanups
1229  - PCRE updated to 8.02
1230
1231 * Build:
1232  - the IA__g_* style symbol aliasing has been disabled and replaced with
1233    the -Bsymbolic-functions linker flag on platforms that support it.
1234    Please be on the watch for portability issues and report them to us.
1235  - many test cases have been moved to the GTester framework
1236  - lcov support has been added for tests
1237  - many windows fixes
1238
1239 * Bugs fixed:
1240  501057  lcov coverage suite and GLib integration
1241  551271  deprecate GRelation
1242  601686  Implement diagnostic mode
1243  603309  GSocketOutputStream broken on Windows (?)
1244  616718  GLIB_GSETTINGS macro can't be used conditionally
1245  616855  GSocketConnection: don't close the socket if it's still reffed
1246  618866  g_ptr_array_remove_index_fast memory leak
1247  619878  keyfile backend calls keys_changed with invalid argument
1248  619879  keyfile backend doesn't make use of expected_type
1249  621092  Add with_closures() variants for bindings
1250  621172  Cross compiling fails
1251  621838  Actually add cwd to platform data
1252  621945  Filter outgoing messages in GDBusConnection
1253  621947  add g_value_take_variant
1254  622038  GSettings: "It is a programmer error" documentation is unclear
1255  622154  [patch] update documentation for g_application_new
1256  622281  binding: Add SYNC_CREATE to the flags
1257  622480  Improve documentation for g_strcmp0()
1258  622554  g_error called if schema not installed
1259  622601  Return interned strings from g_settings_list_keys
1260
1261 * Translation updates:
1262  - Galician
1263
1264 Overview of Changes from GLib 2.25.8 to GLib 2.25.9
1265 ===================================================
1266
1267 +----------------------------------------------------------------+
1268 | WARNING: There have been API changes in GDBus, GSettings and   |
1269 | GApplication. Users of these APIs will need to be adapted. In  |
1270 | particular, a new release of GTK+ is required to go along with |
1271 | this one.                                                      |
1272 +----------------------------------------------------------------+
1273
1274 * GDBus
1275  - Use Gio's default async implementation
1276  - Fix proxy construction for objects with no properties
1277  - Fix error handling in synchronous initialization
1278  - Do not dispatch calls to unregistered objects
1279  - Add _with_closures alternative functions
1280  - Allow constructing GDBusProxy with well-known names
1281  - Remove GType parameters from GDBusProxy constructors
1282  - Nuke g_bus_watch_proxy API
1283  - Add --xml to gdbus-tool to print raw introspected XML
1284
1285 * GSettings
1286  - schema file format change: store (default, options) in gvdb
1287  - Add g_settings_sync()
1288  - Add support for enums and ranges
1289  - 'context' support has been replaced by direct use of
1290    GSettingsBackend
1291
1292 * GApplication
1293  - Switch to using variants for timestamps
1294  - Use GInitable
1295
1296 * GObject
1297  - Introduce g_object_notify_by_pspec
1298  - Add GBinding
1299  - The GVariant gtype G_TYPE_VARIANT was changed from boxed
1300    to fundamental. We believe there were no existing users
1301    of the boxed type, so this should not cause any applications
1302    to break.
1303
1304 * Test framework
1305  - Add package and version to the test report XML
1306  - Use optparse to parse gtester-report commandline
1307  - Add subunit support to gtester-report
1308  - Prevent division by zero if no tests
1309
1310 * Bugs fixed:
1311  621782 Crash using gbinding
1312  619945 GConverterOutputStream triggers assertion and corrupts data
1313  621319 more leaked GVariants in GSettings
1314  621168 GKeyFile memory leak on Windows platform
1315  621002 Switch to using variants for timestamps, split out signals
1316  620953 tiny docs addition
1317  618904 Lies in gunixmounts documentation
1318  621702 Correctly initialize GError
1319  611778 minor cleanup of gtester-report
1320  621213 GDBusProxy and well-known names
1321  621034 Rewrite apps test to ensure children are killed
1322  620954 gapplication gvariant simplifications
1323  611869 add subunit out feature to gtester-report
1324  621119 GDBusProxy and objects with no properties
1325  620990 Use Gio's default async implementation again
1326  620952 g_application_register_with_data is an ugly API
1327  621252 GSettings leaks context
1328  618715 fork() in GSettings test cases is problematic 618715
1329  621905 Assume a ref when doing async work
1330  621266 GSettings "context" clarification
1331
1332 * Translation updates:
1333  Chinese
1334
1335
1336 Overview of Changes from GLib 2.25.7 to GLib 2.25.8
1337 ===================================================
1338
1339 * Initial support for dtrace and systemtap profiling:
1340  - mainloop sources can be named
1341  - probes for memory allocation with g_malloc and gslice
1342  - gquark name tracking
1343  - type creation
1344  - object life-cyle (creation, finalization, ref, unref)
1345  - signal creation and emission
1346
1347 * GVariant
1348  - has been fixed to work with the FreeBSD malloc
1349  - added introspection annotations
1350  - new function: g_variant_builder_add_parsed
1351
1352 * GSettings:
1353  - g_settings_set/get_strv functions have lost their length parameter
1354  - g_settings_set_strv accepts NULL
1355  - added introspection annotiations
1356
1357 * GPermission: an abstract interface for representing permissions,
1358   with a minimal implementation named GSimplePermission
1359
1360 * GApplication: a basic application support class, with a D-Bus based
1361   implementation
1362
1363 * Bugs fixed:
1364  619585 glib-compile-schemas asserts on FreeBSD
1365  620384 Annotate GVariant and GSettings _strv() functions
1366  606044 Add support for dtrace/systemtap static markers
1367  620350 add g_variant_builder_add_parsed() API
1368  620349 utf8ify GVariant printer
1369  620767 Typo in GSettings documentation: "INTLTOOL_NOMERGE_RULE"
1370  620312 Fix g_settings_[gs]et_strv() API
1371  620519 GPermission
1372  620582 GPermission needs a simple implementation
1373  620496 GSettings schema compiler should reject invalid paths
1374  620173 missing single header inclusion guards
1375  620265 g_assertion_message_error should take const GError *
1376
1377 * Translation updates:
1378  Esperanto
1379  Galician
1380  Hebrew
1381  Indonesian
1382  Norwegian bokmål
1383  Slovenian
1384  Spanish
1385
1386
1387 Overview of Changes from GLib 2.25.6 to GLib 2.25.7
1388 ===================================================
1389
1390 * NOTE: API/ABI breaks since 2.25.6 release:
1391   - g_dbus_connection_sync{,_sync} takes a new 'reply_type' argument
1392   - GSettingsBackendClass 'list' virtual function changed
1393
1394   GSettings backends and things using GDBus may need to be rebuilt.
1395
1396 * GDBus: many build-related fixes
1397
1398 * GDBus (service): return a DBus error when receiving a method call for
1399   an unknown interface.
1400
1401 * GSettings: fix 'make install' bug in gsettings.m4 for generated schema
1402   files
1403
1404 * GSettings: avoid non-portable use of LC_MESSAGES
1405
1406 * better approach to handling man pages
1407
1408
1409 * Bugs fixed:
1410  619527 please improve docs on g_file_make_symlink
1411  619391 send-with-reply should have expected result signature
1412  618616 Use stack-allocated GVariantBuilders
1413  617004 Build with "--disable-nls" fails under MinGW/Win32
1414  619142 Build fixes (GDBus)
1415
1416 * Updated translations:
1417  Estonian
1418  Galician
1419  Norwegian bokmål
1420
1421 Overview of Changes from GLib 2.25.5 to GLib 2.25.6
1422 ===================================================
1423
1424 * GDBus: introspection improvements
1425 * GDBus: build fixes
1426
1427 * GSettings: GSettingsBackend ABI changed               **** NOTE ****
1428 * GSettings: --uninstall option for schema compiler
1429 * GSettings: new m4 macro with more power
1430 * GSettings: thread support
1431
1432 * rework of file notification on Solaris
1433 * fixes for gold linker
1434
1435 * Bugs fixed:
1436  619038 increase gsettings.m4 power
1437  619031 method-calls-in-thread test failing
1438  618839 Typo at translation message
1439  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
1440  618730 gunixcredentialsmessage.c doesn't compile on GNU/kfreebsd
1441  616314 Make GSettings (partially) threadsafe
1442
1443 * Updated Translations:
1444  Indonesian
1445  Galician
1446  Spanish
1447
1448 Overview of Changes from GLib 2.25.4 to GLib 2.25.5
1449 ===================================================
1450
1451 * GDBus: Fix serialization of empty arrays
1452
1453 * GDBus: Plug various memory leaks
1454
1455 * GSettings: Fix problems with GSETTINGS_CHECK_RULE
1456
1457 * Bugs fixed:
1458  616731 GSETTINGS_CHECK_RULE doesn't work in non-srcdir builds
1459  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
1460  618615 mem leaks in parse_value_from_blob
1461  618622 Plug some mem leaks in gdbus
1462  618650 Plug a mem leak in gdbusauth
1463  618663 Plug mem leaks in gdbus tests & examples
1464
1465 * Updated translations:
1466  Spanish
1467
1468
1469 Overview of Changes from GLib 2.25.3 to GLib 2.25.4
1470 ===================================================
1471
1472 * GDBus D-Bus support has been merged. This provides an API
1473   to replace dbus-glib
1474
1475 * GVariant no requires strings to be UTF-8. You can use byte
1476   arrays for non-UTF-8 strings.
1477
1478 * GSettings allows to bind string properties to byte arrays
1479
1480 * The schema compiler supports range restrictions
1481
1482 * Bugs fixed:
1483  618051 socket-server|client.c fail to compile under AIX...
1484  616102 GSettings ignores <choice> and <range>
1485  616720 Chunked quark allocation
1486  616877 Several issues with g_socket_receive_message
1487  616892 gio: Add a boxed type for GFileAttributeMatcher
1488  616967 Add g_regex_get_compile_flags() and g_regex_get_match_flags()
1489  617767 g_settings_[gs]et_strv() 'length' argument has missing docs...
1490  617914 gtester-report: cope with binaries with no test cases
1491  617937 output_stream_close vs output_stream_close_async semantics
1492  615494 Connction timeouts produce partially invalid error messages
1493  617823 glib-compile-schemas problems with an out of source build
1494  617947 glib-mkenums: add @valuenum@ support
1495
1496 * Translation updates:
1497  Galicaian
1498  Norwegian bokmål
1499  Shavian
1500  Spanish
1501
1502
1503 Overview of Changes from GLib 2.25.2 to GLib 2.25.3
1504 ===================================================
1505
1506 * New macro: G_GNUC_DEPRECATED_FOR, a variant of G_GNUC_DEPRECATED
1507   that lets you add replacement information (requires gcc 4.5)
1508
1509 * Rename AM_GSETTINGS autoconf macro to GLIB_GSETTINGS
1510
1511 * Rename gschema-compile utility to glib-compile-schemas
1512
1513 * Add support for timeouts in GSocket
1514
1515 * Bugs fixed:
1516  589989 Compilation error on Solaris 9
1517  616648 Change AM_GSETTINGS macro to GLIB_GSETTINGS
1518  587898 I/O timeouts for GSocket
1519  614541 Add G_TYPE_ERROR boxed type for GError
1520
1521
1522 Overview of Changes from GLib 2.25.0 to GLib 2.25.2
1523 ===================================================
1524
1525 * Include a 'gsettings' utility, for commandline access to GSettings
1526
1527 * Install a AM_GSETTINGS autoconf macro similar to AM_GCONF
1528
1529 * GSettings can bind the writability of a key explicitly
1530
1531 * There is now a predefined boxed type for GError
1532
1533 * Bugs fixed:
1534  615379 g_new macros crash if sizeof(struct_type) == 0
1535  616312 Add m4 rule equivalent to GCONF_SCHEMAS_INSTALL
1536  616295 mapping bug for uint64
1537  616216 glib compile from remote directory fails
1538  615960 Fix size passed to connect() for abstract sockets
1539  616432 Crash in gschema-compile
1540  616331 gsettings-schema-convert uses imaginary types
1541  616309 gsettings-schema-convert should output gettext-domain
1542  616384 Add mention of GConfBridge in conversion docs
1543  616311 gschema-compile outputs in current directory
1544  616276 simplify gschema-compile test setup
1545  616156 keys with unnecessary empty options arrays
1546  616405 gsettings missing g_return_if_fail's
1547  616245 Use G_DEFINE_INTERFACE macro
1548  614541 Add G_TYPE_ERROR boxed type for GError
1549
1550 * Updated translations:
1551  Catalan (Valencian)
1552  Galician
1553  Kannada
1554  Spanish
1555
1556
1557 Overview of Changes from GLib 2.24.0 to GLib 2.25.0
1558 ===================================================
1559
1560 * The GSettings framework has been merged. This provides the API to
1561   replace GConf. DConf will provide a backend implementation for it.
1562   GConf will also provide a backend implementation to ease the
1563   transition. We provide utilities to assist with schema conversion
1564   and data migration, as well as a porting guide.
1565
1566 * Translation updates:
1567  Bengali
1568  Catalan
1569  Danish
1570  Gujarati
1571  Marathi
1572  Thai
1573  Traditional Chinese
1574
1575
1576 Overview of Changes from GLib 2.23.6 to GLib 2.24.0
1577 ===================================================
1578
1579 * Bug fixes:
1580  613601 buglet in dup_close_on_exec_fd
1581  584284 g_data_input_stream_read_until_async behaves confusingly
1582  613748 Write errors in middle of copy cause hang
1583  613923 splice_stream_with_progress: wrong error handling
1584  613667 Typo in GObject documentation
1585  613618 gvariant format string docs unclear
1586
1587 * Translation updates:
1588  Basque
1589  Ukrainian
1590  Vietnamese
1591
1592
1593 Overview of Changes from GLib 2.23.5 to GLib 2.23.6
1594 ===================================================
1595
1596 * Class private data:
1597   - support for private data associated with a GTypeClass
1598
1599 * GVariant merge is now complete:
1600   - loading functions and parser merged
1601
1602 * Windows improvements:
1603   - socket fixes
1604   - various build improvements
1605   - removal of GCC/C99isms in favour of portable code
1606   - drop unmaintained Visual Studio 8 support
1607
1608 * Minor API addition:
1609   - g_desktop_app_info_get_filename()
1610
1611 * Bugs fixed:
1612  521707 Class private data
1613  612502 build fails on glib/tests/gvariant.c
1614  612832 [GDesktopAppInfo] New function g_desktop_app_info_get_filename
1615  612702 [PATCH] Fix GSocket-related crash on Windows
1616  612736 Improve the documentation about single include
1617  610858 gvariant test fails sometimes
1618  612327 uninitialized variable
1619
1620 * New translations:
1621  Afrikaans
1622  LowGerman
1623
1624 * Updated translations:
1625  Czech
1626  Finnish
1627  Galician
1628  Greek
1629  Punjabi
1630  Romanian
1631  Serbian
1632
1633
1634 Overview of Changes from GLib 2.23.4 to GLib 2.23.5
1635 ===================================================
1636
1637 * New API addition: g_malloc_n() and friends used to implement an
1638   overflow-safe family of g_new() macros.
1639
1640 * GVariant:
1641  - GVariantBuilder and GVariantIter are now merged.
1642  - The variable arguments API is now merged.
1643  - The parser will be in a future release.
1644
1645 * GIO:
1646  - Remove GUtf8InputStream (which never appeared in a stable release)
1647    for now since it doesn't satisfy the needs of its main intended use
1648    case.  We hope to reimplement this feature in a better form in a
1649    future release.
1650
1651 * Bugs fixed:
1652  609531 missing licence headers
1653  612107 Missing G_FILE_ATTRIBUTE_TRASH_ORIG_PATH
1654  611897 g_io_modules_scan_all_in_directory leaks
1655  608196 Overflow-safe g_new family
1656  611696 gio uses GetAddrInfo which requires special handing on windows 2k
1657  605667 Don't use G_PARAM_SPEC_VALUE_TYPE when we know the pspec is valid
1658  610860 test_g_file_open_readwrite fails if $HOME is unwritable
1659  552912 glib-2.18 /live-g-file/test_copy_move failed when run as root
1660  609813 Renaming a file discards file notes
1661
1662 * Updated translations:
1663  Basque
1664  Brazilian Portuguese
1665  British English
1666  Bulgarian
1667  Catalan
1668  Danish
1669  Estonian
1670  French
1671  German
1672  Hungarian
1673  Italian
1674  Lithuanian
1675  Norwegian bokmål
1676  Portuguese
1677  Russian
1678  Slovenian
1679  Spanish
1680  Swedish
1681  Traditional Chinese
1682
1683
1684 Overview of Changes from GLib 2.23.3 to GLib 2.23.4
1685 ===================================================
1686
1687 * GVariant: The core of GVariant has been merged now, with some
1688  API still to follow.
1689
1690 * GIO:
1691  - There is a new interface GFileDescriptorBased for file descriptor
1692    based IO. GLocalFile{Input,Output}Stream implement it
1693  - Use splice(2) to transfer data between file descriptors without
1694    extraneous copies
1695  - Add a way to request move events from file monitors
1696
1697 * Bugs fixed:
1698  609143 *result_uncertain is never assigned in g_content_type_guess
1699  604086 Use splice(2) when doing local file copies
1700  547890 No move events for GFileMonitorEvent?
1701  568760 nautilus freezes due to a bug in garray.c:322
1702  609962 Add info about the use of G_DEFINE_INTERFACE
1703  609564 g_base64_encode_close docs should mention outbuf size...
1704  610484 g_variant_equal bug
1705  610131 libasyncns does not compile on Solaris 8
1706  609530 missing single header include guards
1707
1708 * Updated translations:
1709  Czech
1710  Estonian
1711  Galician
1712  German
1713  Korean
1714  Polish
1715  Slovenian
1716  Spanish
1717  Traditional Chinese
1718
1719
1720 Overview of Changes from GLib 2.23.2 to GLib 2.23.3
1721 ===================================================
1722
1723 * GLib now has a facility for locks that consume only one bit of
1724   storage inside an integer: g_bit_lock()
1725
1726 * GVariant: The serializer has been merged, with more API to follow
1727
1728 * Bugs fixed
1729  548967 1 bit mutex lock
1730  604967 2.22.3 libasyncns build fails on HP-UX 11.11
1731  608602 G_VALUE_COLLECT_INIT variables shadow those in G_VALUE_COLLECT
1732  608743 Crash in g_hostname_to_ascii visiting certain website in epiphany
1733  599197 array ref and unref functions crash on NULL array.
1734  608159 mem leak in g_io_modules_scan_all_in_directory
1735
1736 * Translation updates
1737  Brazilian Portuguese
1738  Czech
1739  French
1740  Norwegian bokmål
1741  Slovenian
1742  Spanish
1743  Thai
1744
1745
1746 Overview of Changes from GLib 2.23.1 to GLib 2.23.2
1747 ===================================================
1748
1749 * We are now using gcc builtins for atomic operations when available
1750
1751 * g_assert() grew the ability to store assertions in core dumps
1752
1753 * GIO supports lazy loading of GIO modules, and there is a new
1754   gio-querymodule utility that goes along with this.
1755   Packagers will need to adapt to this.
1756
1757 * Threading changes:
1758  - The requirements for g_thread_init() have been relaxed slightly,
1759    it can be called multiple times, and does not have to be the first
1760    call.
1761  - GObject now links to GThread and threads are enabled automatically
1762    when g_type_init() is called.
1763  - Thread-safety issues with boxed types in GObject have been fixed.
1764
1765 * GObject:
1766  - Another bunch of performance work has landed
1767
1768 * GVariant:
1769  - GVariantType has been merged, with the rest of the GVariant
1770    API to follow.
1771
1772 * Bugs fixed:
1773  568760 nautilus freezes due to a bug in garray.c:322
1774  602417 Document lifecycles of GSimpleAsyncResult and friends
1775  604824 crash in Epiphany: Selecting my Slashdot bo...
1776  448888 don't init g_slice for always-malloc
1777  531902 Use GCC atomic buildins for g_atomic*
1778  554887 boxed type registration is not thread safe
1779  586150 unresolved symbols when building glib 2.21.2 on OS X Tiger
1780  589176 row gvalue transform array exponentially
1781  594872 Support storing assertion messages into core dump
1782  602240 Upgrade libasyncns to 0.8
1783  603590 Speed up G_VALUE_COLLECT
1784  604457 gutf8inputstream.c: increasing unknown size pointer
1785  605686 GCharsetConverter doesn't flush
1786  605733 g_memory_output_stream_new violates GObject standards
1787  605883 g_object_new() processes varargs even when there are none
1788  605977 invalid utf-8 conversion in g_local_file_get_parse_name(...
1789  606775 Enable threads by default in gobject
1790
1791 * Translation updates:
1792  Asturian
1793  Basque
1794  Bengali
1795  Bulgarian
1796  Estonian
1797  Norwegian bokmål
1798  Spanish
1799  Thai
1800  Ukrainian
1801
1802
1803 Overview of Changes from GLib 2.23.0 to GLib 2.23.1
1804 ===================================================
1805
1806 * GObject performance work has landed:
1807  - Construction of simple objects is much faster
1808  - Interface lookup is lock-free and constant-time now
1809  - Reduced locking overhead when dealing with types
1810
1811 * GType now has a G_DEFINE_INTERFACE convenience macro
1812
1813 * GIO gained GUtf8InputStream, an input stream that
1814   performs utf-8 validation
1815
1816 * GLib now has byte-swap macros for gsize and gssize
1817
1818 * Bugs fixed:
1819 557151 Determining the newly_constructed boolean in gobject.c...
1820 557100 Performance improvements for GObjectClasses that don't...
1821 501166 Warning message says IA__g_type_init instead of g_type_init
1822 585375 Performance and Contention problems with g_type_class_ref...
1823 587892 Race in GType when instantiating the same class for the...
1824 603270 Input Stream validating utf8
1825 603476 gioenums.h:62: error: comma at end of enumerator list
1826 603540 g_time_val_from_iso8601 uses uninitialised variable
1827 603982 Stack overflow when reading file async with filter
1828 604645 G_DEFINE_INTERFACE_* documentation is not generated
1829 604875 Use of sa_len conflicts with system header
1830 320482 provide G_DEFINE_TYPE like macros for interfaces
1831
1832 * Updated translations:
1833  Estonian
1834  Hebrew
1835  Norwegian bokmål
1836  Vietnamese
1837  Welsh
1838
1839
1840 Overview of Changes from GLib 2.22.x to GLib 2.23.0
1841 ===================================================
1842
1843 * GIO:
1844  - GConverter: a generic interface for stateful conversions of data,
1845    suitable for charset conversion, compression, decompression, regexp
1846    replacement. Concrete implementations are GCharsetConverter,
1847    GZlibCompressor and GZlibDecompressor. GConverterInputStream,
1848    GConverterOutputStream are stream implementations that convert data
1849    while loading or saving it.
1850  - GMounts can now have a 'default location': a path that reflects
1851    the main entry point for the user (e.g. the home directory).
1852  - As a consequence of the compression support, GIO depends on zlib now.
1853
1854 * GObject:
1855  - G_IMPLEMENT_INTERFACE_DYNAMIC: a convenience macro for adding
1856    interfaces to dynamic types.
1857
1858 * GModule:
1859  - The -pthread flag has been added to all gmodule .pc files, because
1860    it is not generally permissible to load modules that are linked
1861    against libpthread if the program has not been compiled with threading
1862    support.
1863
1864 * Bugs fixed:
1865  601637 GUnixFDMessage should contain a GUnixFDList
1866  585566 GSocketListener API issues
1867  572252 Bug in g_file_test() function.
1868  600550 g_app_info_create_from_commandline doesn't treat arguments properly
1869  541236 not detecting exact content type
1870  350200 [PATCH] GTypeModule derived class unref does not unload plugin
1871  589631 Please enclose literal values with double quotes
1872  577711 cross compile check for g++ broken
1873  600620 Support X-GNOME-FullName in GAppInfo
1874  598899 GWin32DirectoryMonitor is broken
1875  593809 Nautilus does not restore the position of the icons on the desktop...
1876  563627 g_get_prgname() threadsafety
1877  600141 Add -pthread to gmodule pkg-config
1878  593856 file and directory monitors don't work when glib is compiled...
1879  324930 Nautilus should disallow copying of symlink to FAT drive early
1880  587300 Deadlock when calling g_cancellable_disconnect in a...
1881  595138 GFile not robust with invalid input
1882  591216 Warning building resolver.o
1883  590016 Does not compile under MinGW32 + Wine
1884  591214 Warnings building gcancellable.o
1885  561998 Have specific entry points (paths) for mounts...
1886  508157 Add G_IMPLEMENT_INTERFACE_DYNAMIC
1887  535159 g_file_has_parent
1888
1889 * Updated translations:
1890  Brazilian Portuguese
1891  Catalan
1892  Estonian
1893  Galician
1894  Norwegian bokmål
1895  Shavian
1896  Slovenian
1897  Spanish
1898  Swedish
1899
1900
1901 Overview of Changes from GLib 2.22.1 to GLib 2.22.2
1902 ===================================================
1903
1904 * GIO:
1905  - Support case-sensitive globs in the shared mime database,
1906    including support for the newer cache format that allows these.
1907    Case-sensitive globs have been introduced in shared-mime-info
1908    version 0.70
1909
1910 * GObject:
1911  - Speed up creation of simple objects
1912
1913 * Bugs fixed:
1914  597194 Typo in _G_TYPE_CVH macro
1915
1916 * Updated translations:
1917  Russian
1918
1919
1920 Overview of Changes from GLib 2.22.0 to GLib 2.22.1
1921 ===================================================
1922
1923 * Bugs fixed:
1924  596064 Test file marked for translation
1925  595972 possibly invalid search in mime_info_cache_dir_add_...
1926  596561 C99 style of declaration of variable in gmessages.c
1927  596314 g_utf16_to_utf8 returns an invalid UTF8 string
1928  596748 g_async_result_get_source_object returns a new ref
1929  593809 Nautilus does not restore the position of the icons...
1930  593775 uses inotify_init1 unconditionally
1931
1932 * Updated translations:
1933  Bengali
1934  Hebrew
1935
1936
1937 Overview of Changes from GLib 2.21.6 to GLib 2.22.0
1938 ===================================================
1939
1940 * Add gdb python macros to make gobject debugging more pleasant
1941
1942 * Bugs fixed:
1943  579050 Allow making selected critical and warning messages non-fatal
1944  594759 g_socket_send_message fails due to invalid sendmsg params
1945  593941 GNetworkAddress skipping addresses when enumerating
1946  594597 Fix build with srcdir != builddir
1947  595619 Include gdb pretty printers
1948
1949 * Changes that might affect bindings:
1950  - The error parameter of g_simple_async_result_set_from_error has been
1951    made const.
1952
1953 * Updated translations:
1954  Assamese
1955  Bengali India
1956  British English
1957  Bulgarian
1958  Catalan
1959  Czech
1960  Danish
1961  Finnish
1962  Galician
1963  Greek
1964  Gujarati
1965  Hindi
1966  Japanese
1967  Kannada
1968  Malayalam
1969  Marathi
1970  Norwegian bokmål
1971  Oriya
1972  Polish
1973  Punjabi
1974  Romanian
1975  Serbian
1976  Simplified Chinese
1977  Slovenian
1978  Spanish
1979  Tamil
1980  Telugu
1981  Thai
1982  Traditional Chinese
1983  Ukrainian
1984  Vietnamese
1985
1986
1987 Overview of Changes from GLib 2.21.5 to GLib 2.21.6
1988 ===================================================
1989
1990 * Minor API additions:
1991   g_mkstemp_full is a variant of g_mkstemp that allows to specify flags
1992   and permissions
1993
1994 * Bugs fixed:
1995  593232 g_rand_new: read no more than requested from /dev/urandom
1996  591995 use saved errno
1997  589491 g_time_val_from_iso8601 doesn't handle some cases
1998  593406 Permissions set to 777 after copying via Nautilus
1999  594034 Add g_mkstemp_full()
2000
2001 * Updated translations:
2002  Assamese
2003  Basque
2004  Brazilian Portuguese
2005  Czech
2006  Estonian
2007  French
2008  German
2009  Hungarian
2010  Italian
2011  Kannada
2012  Malayalam
2013  Marathi
2014  Norwegian bokmål
2015  Oriya
2016  Portuguese
2017  Swedish
2018  Tamil
2019  Turkish
2020
2021
2022 Overview of Changes from GLib 2.21.4 to GLib 2.21.5
2023 ===================================================
2024
2025 * A performance problem with trashing of many files has been fixed
2026
2027 * GResolver now invalidates the libc resolv.conf cache as needed
2028
2029 * Minor api additions:
2030  - g_cancellable_make_pollfd returns a boolean now. And there is a
2031    new function g_cancellable_release_fd that can be used to released
2032    the resources used by a GCancellable.
2033
2034 * Bugs fixed:
2035  589988 Compilation error on Solaris 9 (missing stdint.h)
2036  588901 gtcpconnection.c won't compile
2037  584246 GResolver needs to call res_init() when network state changes
2038  591714 Figure out failure handling for g_cancellable_make_pollfd()
2039  591532 redundent '/' returned from g_file_resolve_relative_path
2040  591378 Use MSG_NOSIGNAL in GSocket if it's available
2041  589649 API documentation migration for Base64 Encoding
2042  591840 configure fails with autoconf 2.64
2043
2044 * Updated translations:
2045  Basque
2046  Brazilian Portuguese
2047  Bulgarian
2048  Danish
2049  Estonian
2050  Finnish
2051  Galician
2052  Gujarati
2053  Hndi
2054  Irish
2055  Japanese
2056  Korean
2057  Norwegian bokmål
2058  Polish
2059  Portuguese
2060  Punjabi
2061  Spanish
2062  Swedish
2063  Telugu
2064  Traditional Chinese
2065  Thai
2066
2067
2068 Overview of Changes from GLib 2.21.3 to GLib 2.21.4
2069 ===================================================
2070
2071 * GTree is now refcounted
2072
2073 * Bugs fixed:
2074  587938 Undocumented limitation for g_str_equal
2075  587773 refcounts for GTree
2076
2077 * Updated translations:
2078  French
2079  Hebrew
2080  Norwegian bokmål
2081  Spanish
2082  Swedish
2083  Traditional Chinese
2084  Ukrainian
2085
2086
2087 Overview of Changes from GLib 2.21.2 to GLib 2.21.3
2088 ===================================================
2089
2090 * GMappedFile is refcounted now
2091
2092 * Mainloop: It is now possible to set per-thread default contexts,
2093   with g_main_context_push_thread_default.
2094
2095 * glib-mkenums supports a @basename@ substitution, in addition
2096   to @filename@.
2097
2098 * GIO:
2099  - Vfs implementations can support storing of per-file metadata.
2100  - GCancellable can now be subclassed.
2101  - Unmount and eject methods now optionally allow interaction, via
2102    variants that take a GMountOperation object.
2103
2104 * Bugs fixed:
2105  556706 Inconsistent help arguments -h, -?
2106  579449 FileChoosers no longer work if an idle handler is active
2107  579933 mainloop FD_CLOEXEC has a race condition
2108  579984 alternate GMainContext support
2109  585937 gio/gsocket.c (glib 2.21.2) does not compile (Windows/mingw)
2110  586675 Runtime library location
2111  586797 Add GCancellables to GSocket ops
2112  586868 g_filename_complete_get_completions doesn't always return...
2113  587415 g_resolver_lookup_by_name_finish returns a freed list
2114  587434 regression tests fail, at least on x86_64
2115  586928 Avoid g++ warning in g_error()
2116
2117 * Updated translations:
2118  Estonian
2119  Hebrew
2120
2121
2122 Overview of Changes from GLib 2.21.1 to GLib 2.21.2
2123 ===================================================
2124
2125 * GIO:
2126   - g_socket_speaks_ipv4 is a new function to check if a socket can
2127     speak IPv4.
2128   - g_socket_listener_add_address gained a new effective_address out
2129     parameter.
2130   - GIO now returns special icons for XDG user directories, by the
2131     name folder-music, folder-documents, etc.
2132   - GIO gained support for starting/stopping of drives, which can be used
2133     in connection with external hard disk enclosures, disk arrays, iSCSI
2134     devices, etc. See g_file_start/stop_mountable.
2135
2136 * GLib:
2137  - g_reload_user_special_dirs_cache is a new function to force GLib to
2138    reload the XDG user directory mapping from disk.
2139
2140 * Bug fixes:
2141  584574 glib compile failure on Mac OS X with gunixresolver.c and...
2142  585566 GSocketListener API issues
2143  584255 Incorrect freeing of thread pool in GThreadedSocketService
2144  585088 g_string_chunk_insert_len stops at nul bytes
2145  585360 Monitor fontconfig configuration files using gio causes m...
2146  580103 Terminal starts on Display :0.0 when started on :0.1 in D...
2147  580301 network: a few issues on old darwin
2148  583398 SRV weight sorting is incorrect
2149  584176 build fixes on FreeBSD
2150  585189 g_cancellable_reset() must be called in same thread as g_...
2151  585280 compilation dies on gio/gsocket.c, needs sys/uio.h to con...
2152  585281 gio/gunixfdmessage.c needs sys/types.h for platforms that...
2153  585478 don't leak the inotify fd
2154  585575 g_socket_listener_add_inet_port() doesn't do the right thing
2155  585599 g_socket_listener_add_socket() consumes the socket
2156  585676 GEmblem doesn't reference its 'icon' if that is set as a ...
2157  585717 "bytes" nautilus translation to french is not shown in th...
2158  541276 XDG directories should have their own icons
2159  585726 Grammatical error in GList documentation
2160  585520 Wrong warning option in documentation
2161  585673 GNOME Goal: Remove deprecated glib symbols
2162  585591 Starting/stopping drives
2163
2164 * Updated translations:
2165  Bengali India
2166  Norwegian bokmål
2167
2168
2169 Overview of Changes from GLib 2.21.0 to GLib 2.21.1
2170 ===================================================
2171
2172 * GIO:
2173  - Support for network IO has been added, including a low-level
2174    socket API and a high-level API for network connections and
2175    services.
2176  - Support for read-write access with GIOStream and its subclasses.
2177  - GMount gained a pre-unmount signal.
2178
2179 * Bug fixes:
2180  576104Implement GMount::pre-unmount
2181  578769 implement GWinHttpFileInputStream::close_fn
2182  582856 gsocket.c doesn't compile on Solaris
2183  569375 g[u]intptr undocumented
2184  573246 [FIX] g_desktop_app_info_dup() can access NULL pointer
2185  575013 g_cancellable_push_current() does not allow NULL
2186  577884 live-g-file.c:461: error: format ‘%d’ expects type ...
2187  578499 g_output_stream_splice and stream closing with gnio strea...
2188  579558 Application employing gvfs crashes with only libgvfscommo...
2189  583001 SIGPIPE (grr!)
2190  583061 Please add convenience function to connect to machines by...
2191  583198 typo in error message
2192  583206 use g_set_error_literal where appropriate
2193  583229 void function g_async_initable_init_async returns value
2194  583324 locking problem in g_main_context_iterate()
2195  583408 void function g_socket_control_message_serialize returns ...
2196  578786 wrong and confusing error message
2197  583205 g_inet_address_to_bytes has no length outparam
2198  583196 mem leak in keyfile test
2199  583663 GSocketType enum ends with a comma
2200  569024 Make g_error_new_valist public
2201  569376 missing G_G[U]INTPTR_FORMAT
2202  580347 off-by-1 bug in GWinHttpFile
2203
2204 * Updated translations:
2205  Oriya
2206  Spanish
2207  Valencian-Catalan
2208
2209
2210 Overview of Changes from GLib 2.20.x to GLib 2.21.0
2211 ===================================================
2212
2213 * GIO:
2214  - New helper functions g_cancellable_connect/disconnect to avoid
2215    race conditions when connecting to the "cancelled" signal on
2216    GCancellable.
2217  - New types and methods for dealing with IPv4 and IPv6 addresses (and
2218    UNIX domain socket addresses under UNIX). This does not include code
2219    for actual socket I/O.
2220  - GResolver provides asynchronous and cancellable APIs for resolving
2221    hostnames, reverse lookup of IP addresses and resolving SRV records.
2222
2223 * Glib now provides hash and comparison functions for int64 and double
2224   types, suitable for use with GHashTable.
2225
2226 * GArray, GPtrArray and GByteArray can be ref counted now, and have
2227   boxed types.
2228
2229 * Bugs fixed:
2230  572844 Helper for GCancellable::cancelled connect/disconnect
2231  578363 goption docs should be improved
2232  548466 async/cancellable DNS resolver
2233  579830 param spec strings should use P_()
2234  579862 requesting xattr::foo ends up calling getxattr(..., user...
2235  580453 Hash and equal functions for gint64 and gdouble
2236  580450 Reference counting and boxed types for arrays
2237  580194 gresolver doesn't build on Solaris
2238  580301 network: a few issues on old darwin
2239  580299 network: include sys/types.h before sys/socket.h to insur...
2240  572508 gmarkup speedup
2241  580546 g_strtoull() referenced in documentation...
2242  580656 g_key_file_set_string_list erroneously asserts list != NULL
2243  579272 leaks in g_simple_async_result_set_op_res_gpointer
2244
2245
2246 * Updated translations:
2247  Catalan (ca)
2248  Pashto (ps)
2249  Spanish (es)
2250
2251
2252 Overview of Changes from GLib 2.20.0 to GLib 2.20.1
2253 ===================================================
2254
2255 * Bug fixes:
2256  575555 Use fsync() when replacing files to avoid data loss on
2257  575708 runaway inotify madness
2258  575270 GVolumeMonitor::mount-pre-unmount not being emitted
2259  577128 glib make check Failed to execute child process...
2260  573673 Always show "backup" directories
2261  578369 g_time_val_from_iso8601() parses timezones incorrectly
2262  578002 Fix a small typo in GFile docs
2263  578017 G_DEFINE_TYPE_EXTENDED docs
2264
2265 * Updated translations:
2266  Arabic
2267  Assamese
2268  Basque
2269  Bularian
2270  Brazilian Portuguese
2271  British English
2272  Catalan
2273  Danish
2274  French
2275  Galician
2276  German
2277  Greek
2278  Hungarian
2279  Italian
2280  Japanese
2281  Kannada
2282  Lithuanian
2283  Malayalam
2284  Norwegian bokmål
2285  Oriya
2286  Polish
2287  Punjabi
2288  Russian
2289  Simplified Chinese
2290  Slovenian
2291  Spanish
2292  Swedish
2293  Tamil
2294
2295
2296 Overview of Changes from GLib 2.19.9 to GLib 2.20.0
2297 ===================================================
2298
2299 * Base64 support: Avoid integer overflows. CVE-2008-4316
2300
2301 * Bugs fixed:
2302  574019 GChecksum: document and guarantee hex characters in lower case
2303  573454 Unable copy/move files to directories symlinked to gvfs share
2304  561172 gnome-open fails on local URIs with anchors
2305  573970 crash in gunixvolumemonitor:update_mounts when unmounting
2306  573843 g_get_current_dir returns non-absolute path
2307
2308 * Updated translations:
2309  Assamese (as)
2310  Bengali (bn_IN)
2311  Czech (cs)
2312  Hindi (hi)
2313  Italian (it)
2314  Japanese (ja)
2315  Lithuanian (lt)
2316  Malayalam (ml)
2317  Marathi (mr)
2318  Oriya (or)
2319  Polish (pl)
2320  Romanian (ro)
2321  Telugu (te)
2322
2323
2324 Overview of Changes from GLib 2.19.8 to GLib 2.19.9
2325 ===================================================
2326
2327 * GMarkup:
2328  - Considerable speedup
2329
2330 * GIO
2331  - Add G_FILE_CREATE_REPLACE_DESTINATION flag to allow replacing
2332    the destination of a copying operation as if it did not exit before.
2333  - Be more careful when classifying files as desktop files
2334  - Support desktop file key X-GIO-NoFuse which disables the use
2335    of fuse pathnames for %u and %U arguments
2336
2337 * Bugs fixed:
2338  572672 glib/gthread.c: argument is different type
2339  572464 Doc for g_file_get_contents
2340  572151 “it's” and “its” confused in docs and comments
2341  570501 g_win32_get_system_data_dirs uses invalid conversion...
2342  167569 g_string_append_printf crashes on win32 when used...
2343  572508 gmarkup speedup
2344  560564 Replacing a symlink with its linked file truncates... 
2345  549298 impossible to copy files with p (pipe) flag
2346  543183 Clarify docs for g_file_has_prefix
2347  540461 g_memory_output_stream_get_data_size() doesn't behave...
2348  573462 GEmblemedIcon leak
2349  573421 Clarify message format in GMountOperation
2350  573658 Deadlock in giomodule.c
2351  556706 Inconsistent help arguments -h, -?
2352  573527 Wrong shell to run config.status in Makefile.in.in
2353  573128 A couple of typos in GObject documentation
2354
2355 * Updated translations:
2356  Catalan (ca)
2357  British English (en_GB)
2358  Spanish (es)
2359  Basque (eu)
2360  Finnish (fi)
2361  French (fr)
2362  Gujarati (gu)
2363  Hebrew (he)
2364  Hungarian (hu)
2365  Korean (ko)
2366  Maithili (mai)
2367  Norwegian bokmål (nb)
2368  Dutch (nl)
2369  Portugese (pt)
2370  Swedish (sv)
2371  Thai (th)
2372  Traditional Chinese (zh_HK)
2373  Traditional Chinese (zh_TW)
2374
2375
2376 Overview of Changes from GLib 2.19.7 to GLib 2.19.8
2377 ===================================================
2378
2379 * GIO: Fix missing exports of new API
2380
2381 * Fix strict aliasing warnings and violations to make Glib work
2382   with gcc 4.4
2383
2384
2385 Overview of Changes from GLib 2.19.6 to GLib 2.19.7
2386 ===================================================
2387
2388 * GIO
2389  - GFile gained an attribute for the actual file size in bytes
2390  - GMountOperation gained an "aborted' signal that allows to abort
2391    a mount operation from the backend side
2392
2393 * Bugs fixed:
2394  523742 Use noinst for non-installable libraries
2395  566747 URIs opened with firefox %u load as local files
2396  541225 Can't compile gio on AIX duplicate case value in gioerror.c
2397  571598 GAsyncResult with NULL gobject
2398  505042 add file attribute for actually used file size in bytes
2399
2400 * Updates translations:
2401  Basque (eu)
2402  Gujarati (gu)
2403  Italian (it)
2404  Japanese (ja)
2405  Norwegian bokmål (nb)
2406  Dutch (nl)
2407  Portugese (pt)
2408  Thai (th)
2409  Vietnamese (vi)
2410
2411
2412 Overview of Changes from GLib 2.19.5 to GLib 2.19.6
2413 ===================================================
2414
2415 * New format macro to print goffset data: G_OFFSET_FORMAT
2416
2417 * GIO: 
2418  - Add a GFilter{Input,Output}Stream::close-base-stream properties which
2419    determine whether the base stream will be closed when the filter stream
2420    is finalized.
2421  - g_data_input_stream_read_line and ..._read_until have asynchronous
2422    variants now.
2423
2424 * Bugs fixed:
2425  568294 A wrong reference in the description of g_bookmark_file_...
2426  563141 RFE: define G_OFFSET_FORMAT
2427  569105 g_time_val_to_iso8601() assumes time_t==long
2428  568394 dropping the last reference to a stream filter closes...
2429  568741 g_buffered_input_stream_fill_async doesn't work
2430  568723 g_buffered_input_stream_fill_async doesn't take count == -1
2431  568575 _async functions for GDataInputStream
2432
2433 * Updated translations:
2434  Bulgarian (bg)
2435  Finnish (fi)
2436  Hungarian (hu)
2437  Oriya (or)
2438  Swedish (sv)
2439  Traditional Chinese (zh_HK)
2440  Traditional Chinese (zy_TW)
2441
2442
2443 Overview of Changes from GLib 2.19.4 to GLib 2.19.5
2444 ===================================================
2445
2446 * Update included PCRE to 7.8
2447
2448 * g_base64_decode_inplace: New function to do base64 decoding in place
2449
2450 * Bugs fixed:
2451  567138 get_package_directory_from_module() does not free ...
2452  566569 gregex docs clarification
2453  566573 g_match_info_fetch_pos docs
2454  564728 Add function to decode base64 encoded data in place
2455  567838 G_STRUCT_OFFSETOF fails to compile under icc 9.1
2456  567977 textdomain() macro should not return NULL ...
2457  512779 --disable-regex breaks compilation
2458  566770 error code 0 for Too many open files is useless
2459  565484 g_content_type_guess passes non-UTF8 text to XDG ...
2460
2461 * Updated translations:
2462  Catalan (ca)
2463  Spanish (es)
2464  Italian (it)
2465  Swedish (sv)
2466
2467  
2468 Overview of Changes from GLib 2.19.3 to GLib 2.19.4
2469 ===================================================
2470
2471 * GIO:
2472   - Use O_NOATIME when sniffing mimetypes
2473   - Add a convenience method to check if a GSimpleAsyncResult
2474     is valid
2475
2476 * Bugs fixed:
2477  560676 function access for g_threads_supported
2478  565905 There is no g_context_group_set_translation_domain
2479  564210 SUN Studio 12 has supported visibility attribute
2480  565136 GObject's "notify" signal parameters are wrong in gtk-doc
2481  565831 error in interface creation sample
2482  566348 g_file_open_tmp uses the wrong g_mkstemp on win32
2483  566064 Add NOATIME flag to query_info_flags
2484  566170 g_async_result_verify_source_object
2485
2486 * Updated translations:
2487  Spanish (es)
2488  Norwegian bokmål (nb)
2489  Brazilian Portugese (pt_BR)
2490  Simplified Chinese (zh_CN)
2491
2492
2493 Overview of Changes from GLib 2.19.1 to GLib 2.19.3
2494 ===================================================
2495
2496 * Bugs fixed:
2497  508021 Add support for the CRIS and CRISv32 architectures
2498  526320 should not list mounts that the user doesn't have permission to use
2499  558458 Cannot build gio tests on Solaris using SUN cc
2500  555465 GUnix{Input,Output}Stream lacks fd/close_fd_at_close property
2501  558298 Hide ecryptfs mounts
2502  515777 incorrect date&time on copy
2503  562452 Ensure we return G_IO_ERROR_CANCELLED if cancelling
2504         g_simple_async_result_run_in_thread
2505  473150 g_type_module_use inconsistently increases the use
2506         counter in case of error
2507  563150 G_GU?INT*_MODIFIER/FORMAT docs
2508  563156 Document printing and scanning gunichar values
2509
2510 * Updated translations:
2511  Hebrew (he)
2512  Italian (it)
2513  
2514
2515 Overview of Changes from GLib 2.19.0 to GLib 2.19.1
2516 ===================================================
2517
2518 * GIO: 
2519   - g_icon_to_string, g_icon_new_for_string: GIcon serialization support
2520   - G_FILE_ATTRIBUTE_PREVIEW_ICON: new file attribute for preview images
2521   - g_app_info_get_commandline: new function to get the full commandline
2522   - g_mount_shadow, g_mount_unshadow, g_mount_is_shadowed: New functions 
2523     to 'shadow' mounts (i.e. hide them from the UI when they already
2524     have a different representation, like a bookmark) 
2525
2526 * Bugs fixed:
2527  556186 gpoll.h breaks gmain.h inclusion
2528  557087 mem leak in g_content_types_get_registered
2529  556921 gpoll.h breaks hal compilation
2530  557210 g_compute_checksum_for_* asserts with less than 2 bytes
2531  558381 Add support for compile time assertions
2532  558185 'parent' variable in g_local_file_get_child_for_display_name()
2533         hits g_object_unref(NULL) assertion
2534  558513 g_warn_if_fail FIXME in gtestutils
2535  558672 NULL key lookup using g_hash_table_lookup_extended() 
2536  555740 gicon serialization
2537  557182 preview functionality
2538  528320 Incorrect icons displayed for files with custom mimetype icons
2539  556910 Memory leak: sub
2540  557592 Missing include in gwinhttpfile.c
2541  556415 Crash on Windows 2000 in g_winhttp_vfs_init()
2542  555935 Clarify the mechanism of overwriting properties
2543  552776 ac_cv_func_posix_getgrgid_r not mentioned
2544  559448 GObject Reference Manual (typo)
2545  561212 GFileReadMoreCallback API doc refers to non-existant function
2546  560569 gkeyfile doesn't use the set list_separator in some cases
2547  560568 gkeyfile docs buglet
2548  559413 g_option_group_set_error_hook docs buglet
2549  562378 callback return value not respected for callback option
2550         with no arg
2551  559110 Do not include libintl.h after glibintl.h
2552  557603 carbon check output misplaced
2553  562544 g_key_file_get_string and g_key_file_get_value
2554         documentation does not explain the difference
2555  547264 Missing "no flags" flag
2556  562638 GDebugKey key member should be const
2557  562639 g_parse_debug_flags() parsing "help"
2558  562549 g_byte_array_free should tell how free data
2559  559452 GObject Reference Manual (typo)
2560  559462 GObject Reference Manual (typo)
2561  559517 GObject Reference Manual (typo)
2562  562538 GObject interface tutorial shouldn't finalise with
2563         "Please forget everything"
2564  561352 Leak of icon description
2565  561375 Leaks mountpoint description
2566  561807 inotify_sub.c: dup_dirname() fails to remove trailing '/'
2567  562393 g_buffered_input_stream_read_byte broken if data available
2568  541715 win32 : patch for warnings and signature problems in recent code
2569  547481 g_data_input_stream_read_line behaves not as stated in the docs
2570  548163 Nautilus displays wrong error message for too long file names
2571  559633 gtk_image_new_from_gicon does not always work for .desktop files
2572  555486 – No way to recover command line from GAppInfo
2573
2574 * Translation updates:
2575  Spanish (es)
2576  Ukrainian (uk)
2577
2578
2579 Overview of Changes from GLib 2.18.1 to GLib 2.19.0
2580 ===================================================
2581
2582 * Rewrite GHashTable to use open addressing with quadratic probing instead 
2583   of chaining. This has the potential to reduce memory fragmentation 
2584   significantly, while being slightly faster due to better locality and 
2585   no need to call alloc/free functions for nodes. Benchmarks suggest it 
2586   also uses less memory overall.
2587
2588 * Make g_poll available as public api
2589
2590 * New macros g_assert_error and g_assert_no_error to assert 
2591   that a GError is set or unset
2592
2593 * g_cancellable_make_pollfd: New method to make a GPollFD for a cancellable
2594
2595 * g_app_info_can_delete, g_app_info_delete, g_app_info_reset_type_associations:
2596   New functions to clean up app infos and content types
2597
2598 * When launching applications, always pass fuse file:// uris when possible,
2599   and let gio convert such uris back to gio uris.
2600
2601 * Bugs fixed:
2602  505361 gunixinputstream.c assumes poll() available
2603  509446 portable blocking gio cancellation
2604  553820 gpoll.c: undeclared identifier
2605  553724 python interpretter path not patched in correctly
2606  553857 gbacktrace.h requires signal.h
2607  553447 g_assert_no_error()
2608  554092 glib doesn't return G_FILE_ERROR_NOENT et al on OS X
2609  528670 Always pass file:/// uri's in GAppLaunchContext
2610  555224 Improve g_format_size_for_display doc
2611  555309 giochannel breaks on error
2612  554790 g_convert() misbehaves with winiconv versions
2613  555314 mem leak in gmarkup
2614  555313 GFileAttribute boxed type get_type function should...
2615  552861 glib-2.0.m4 calls system(3) without storing its result
2616  554557 Patch to fix gcc warnings about missing format specifiers
2617  552107 Small libtool fixes
2618  551355 Make glib build with libtool 2.2
2619  555311 format not a string literal and no format arguments
2620  556101 static mutex yields warnings with g++
2621  556186 gpoll.h breaks gmain.h inclusion
2622  526456 Open addressing in GHashTable
2623  553426 cancellable clarifications
2624  545350 GAppInfo deletion
2625  545351 Reset associations for content type
2626  552168 volume's mount not mounted after g_volume_mount_finish
2627  554970 segfault when update-desktop-database is not available...
2628  554745 GFileAttributeInfoList should be boxed
2629  555121 Improved build-time handling of gio module-dir
2630  555711 Wrong fallback order of mimetype icons
2631  555331 Deprecate adoption of mounts
2632  556335 make check fails in abicheck.sh
2633  556334 Warning when building without selinux support
2634  556422 g_file_enumerator_next_file: unclear...
2635
2636 * Updated translations:
2637  Arabic (ar)
2638  Danish (da)
2639  Polish (pl)
2640  Brazilian Portugese (pt_BR)
2641  Romanian (ro)
2642  Russian (ru)
2643
2644
2645 Overview of Changes from GLib 2.18.0 to GLib 2.18.1
2646 ===================================================
2647
2648 * Bugs fixed:
2649  550433 g_test_init doesn't recognize --help
2650  523463 Core dump in gmain.c:2482:IA__g_main_context_check
2651  551228 G_STRFUNC on recent Sun compiler should be expanded...
2652  551410 gtestutils.c: using printf without prototype
2653  551731 g_date_set_time[_t] docs should mention what timezone
2654  548321 <string.h> is not included in gi18n-lib.h
2655  551149 xdgmime mem leak
2656  550647 synchronous pipe I/O when reading mount reply
2657  551887 Docs for g_desktop_app_info_new_from_filename aren't...
2658  551681 g_content_type_guess() too naive with filenames
2659  552352 g_app_info_launch doesn't work if "Path" key...
2660  551408 gmodule.def generated to builddir...
2661  552359 g_file_info_get_icon should return GThemedIcon, and...
2662
2663 * Updated translations:
2664  Arabic (ar)
2665  Bengali India (bn_IN)
2666  British English (en_GB)
2667  Hindi (hi)
2668  Croatian (hr)
2669  Korean (ko)
2670  Oriya (or)
2671  Turkish (tr)
2672  Telugu (te)
2673
2674
2675 Overview of Changes from GLib 2.17.7 to GLib 2.18.0
2676 ===================================================
2677
2678 * Win32:
2679   - rework the g_poll() implementation to match poll() semantics more closely
2680
2681 * Bugs fixed:
2682  324234 Using g_io_add_watch_full() to wait for connect() to return...
2683  548278 Async GETs connections are always terminated unexpectedly...
2684  500246 Bug fixes for giowin32
2685  523939 Example program for GValue
2686  550096 GBookmarkFile parser is not forward compatible
2687  550040 Move GString, rand and printf tests to the unit test framework
2688  550104 trivial documentation fix for g_get_home_dir
2689  548988 g_file_replace fails on Windows when the target file exists
2690  550059 Wrong docs for g_emblemed_icon_add_emblem
2691  548800 Missing a g_object_get_type function
2692  550056 Missing documentation for g_emblemed_icon_get_emblems
2693
2694 * Updated translations:
2695  Bulgarian (bg)
2696  Czech (cs)
2697  German (de)
2698  Estonian (et)
2699  Basque (eu)
2700  French (fr)
2701  Hebrew (he)
2702  Hungarian (hu)
2703  Italian (it)
2704  Japanese (ja)
2705  Lithuanian (lt)
2706  Maithili (mai)
2707  Dutch (nl)
2708  Swedish (sv)
2709  Thai (th)
2710  Ukrainian (uk)
2711  Vietnamese (vi)
2712
2713
2714 Overview of Changes from GLib 2.17.6 to GLib 2.17.7
2715 ===================================================
2716
2717 * More fixes for 64-bit Windows
2718
2719 * GIO
2720  - Add a vfs implementation for HTTP and HTTPS URIs on Windows
2721
2722 * Bugs fixed:
2723  546329 API docs for g_utf8_normalize() are incorrect
2724  546876 Modify GMarkup parser to accept &#x1; .. &#x1f;
2725  547200 g_utf8_find_next_char() issues
2726  547637 unconditional #include of sys/statfs.h in configure
2727  547337 G_DISABLE_DEPRECATED breaks tests build
2728  547832 gtk+-2.12.11 fails to build - AC_PROG_MMAP too strict
2729  502498 Test framework assertion failures should follow gcc
2730  546371 Improve docs re g_file_monitor
2731  546483 GThemedIcon:use-default-fallbacks is not readable without...
2732  546132 GFileIcon is bindings-unfriendly
2733  542156 zfs mount in home directory shown on nautilus desktop 
2734  535124 umask 002 not being applied for new directories...
2735  547080 g_file_copy leaks expected errors
2736  546582 Callbacks from GFileMonitor present a GFile...
2737  547262 Missing link in the docs
2738
2739 * Updated translations:
2740  Arabic (ar)
2741  Catalan (ca)
2742  Spanish (es)
2743  Basque (eu)
2744  Finnish (fi)
2745  Galician (gl)
2746  Hebrew (he)
2747  Marathi (mr)
2748  Norwegian bokmål (nb)
2749  Portugese (pt)
2750  Brazilian Portugese (pt_BR)
2751  Swedish (sv)
2752  Thai (th)
2753
2754
2755 Overview of Changes from GLib 2.17.4 to GLib 2.17.6
2756 ===================================================
2757
2758 * Fix problems on 64-bit Windows
2759
2760 * g_markup_context_get_user_data: New function to access
2761   the user_data outside of callbacks
2762
2763 * GIO
2764  - g_mount_guess_content_type_sync: synchronous version of
2765    g_mount_guess_content_type
2766  - GEmblem: A GIcon implementation that adds emblem-related
2767    metadata to icons
2768  - GEmblemedIcon: A GIcon implementation that can add emblems
2769    to icons
2770
2771 * Bugs fixed:
2772  544088 option_test_LDADD is left in tests/Makefile.am
2773  544465 gmarkup makes it hard to use pre-rolled parsers
2774  545485 Implicit declaration of utime()
2775  545798 "Since: 2.18" mark is missing in g_set_error_literal...
2776  544140 fam-helper 64-bit issue
2777  529694 SELinux context setting support
2778  545157 wrong/no list of "open with" applications for .cc...
2779  545203 gfile.c: argument is different type
2780  545457 gdmsetup crashed with SIGSEGV in g_unix_mount_guess...
2781  544177 Fix trivial cut and paste error in documentation
2782  545395 Language tweak for g_value_set_string* docs
2783  541036 Gnumeric crashes when trying to open Desktop...
2784  546079 leak in xdgmime
2785  545395 Language tweak for g_value_set_string* docs
2786  546017 Don't copy attributes when copying a symlink
2787
2788 * Updated translations:
2789  Arabic (ar)
2790  Estonian (et)
2791  Galician (gl)
2792  Italian (it)
2793  Japanese (ja)
2794  Korean (ko)
2795  Norwegian bokmål (nb)
2796  Pashto (ps)
2797  Portugese (pt)
2798
2799
2800 Overview of Changes from GLib 2.17.3 to GLib 2.17.4
2801 ===================================================
2802
2803 * GIO:
2804  - New API to handle content types: g_mount_guess_content_type,
2805    g_content_type_guess_for_tree.
2806  - Export the eject-button signal on the volume monitor class
2807  - New API to enable out-of-process volume monitors: 
2808    g_volume_get_activation_root
2809
2810 * GObject:
2811  - New API to handle signals without slots in the class structure:
2812    g_signal_new_class_handler, g_signal_override_class_handler   
2813
2814 * Internationalization:
2815  - Add an NC_ macro that is a no-op equivalent of C_
2816
2817 * GMarkup:
2818  - Add two new functions g_markup_parse_context_push,
2819    g_markup_parse_context_pop to support "subparsers"
2820
2821 * Bugs fixed:
2822  541208 Functions to easily install and use signals without...
2823  541507 Ambiguous description of assigned characters in the...
2824  543040 async reading on dummy file will crash on GIO_USE_VFS=local
2825  543560 enable gio-FEN back-end warnings on Solaris will crash...
2826  528317 GRegex does not allow recursion limit
2827  337518 GMarkup: Subparser support
2828  541794 drive-eject-button signal
2829  541793 activation root for volumes
2830  467707 test_iconv_state() in tests/convert-test.c fails on AIX 5.3
2831  428048 2 of 51 tests fail on Solaris
2832  542332 small fix for error message in GMarkup
2833  482413 get_contents_stdio -- overflow and memory corruption
2834  406120 g_ascii_strtod
2835  334234 "printf" format error
2836  536996 Missing noop i18n macro equivalent to C_
2837  540616 mem leak in filechooser button
2838  539229 gobject-query calls itself query
2839  521589 [RFC] gobject documentation should mention Vala
2840  543168 Description of G_SLICE=debug-blocks discourages its use
2841  543220 Case collision on gio-extension-points.html
2842  530759 update the gobject tutorial to the XXI century
2843  535223 gbookmark file inefficiency ...
2844  543504 crash in Epiphany Web Browser: Opening local file
2845
2846 * Updated translation:
2847  German (de)
2848  Estonian (et)
2849  Pashto (ps)
2850  Albanian (sq)
2851  Thai (th)
2852  Traditional Chinese (zh_HK)
2853  Traditional Chinese (zh_TW)
2854
2855
2856 Overview of Changes from GLib 2.17.1 to GLib 2.17.3
2857 ===================================================
2858
2859 * PCRE
2860  - fix for CVE-2008-2371 
2861
2862 * Bugs fixed:
2863  538119 glib's mainloop leaks a pipe to sub-processes
2864  537635 Corrections and improvements to g_time_val_{to,from}_iso8601
2865  539067 The document g_io_channel_win32_new_fd() says...
2866  535949 annotate g_strip_context and g_dpgettext with G_GNUC_FORMAT
2867  539123 annotate g_d[n]gettext with G_GNUC_FORMAT
2868  539074 Cannot get exit status with g_spawn_command_line_sync
2869  316221 G_LOCK warns about breaking strict-aliasing rules
2870  539770 migrate gstrfunc unit tests to gtest
2871  539626 Update docstrings for g_object_freeze_notify and g_object_thaw_notify
2872  538044 unconditional use of LC_MESSAGES
2873  540545 Monotonic time and timer offset
2874  535947 want g_set_error_literal
2875  539999 glibconfig.h: add GLIB_USING_SYSTEM_PRINTF 
2876  536252 GFileEnumerator should allow access to the containing GFile
2877  538362 Get Win32 icons back in the file chooser
2878  540802 g_list_prepend doesn't concat lists
2879  540423 unrecoverable error after g_seekable_truncate
2880  538836 make check failure on PPC and ALPHA: pltcheck.sh on g_atomic_pointer_get
2881  539090 g_content_type_from_mime_type() should unalias
2882  540331 g_file_append_to () documentation: can return NULL
2883  534639 add g_desktop_app_info_new_from_keyfile
2884  536733 gio build failure on Irix
2885  536160 Add g_file_monitor()
2886  538127 FileChooser broken on win32
2887  531476 /live-g-file/test_traverse_structure test fails on Mac HFS+
2888  538564 gio should have gio-types.h
2889  540047 glib-genmarshal.c: '#include <io.h>' is too before
2890
2891 Updated translations:
2892  Korean (ko)
2893  Occitan (oc)
2894
2895
2896 Overview of Changes from GLib 2.17.0 to GLib 2.17.1
2897 ===================================================
2898
2899 * New function: g_utime(), a gstdio wrapper for utime()
2900
2901 * New functions: g_dgettext() and g_dngettext(), wrappers
2902   for corresponding gettext functions with added functionaliy
2903
2904 * Support the latest version of the shared-mime spec, including
2905   icons for mime types 
2906
2907 * New function: g_themed_icon_prepend_name()
2908
2909 * Bugs fixed: 
2910  535418 Please document which glib version defines goffset
2911  528715 Misprint in the description of the interface g_type_class_add_private
2912  528714 Misprint in the description of the interface g_param_spec_flags
2913  537260 Doc bug in G_TYPE_INSTANCE_GET_CLASS()
2914  530527 Misprint in the description of the interface 
2915         g_cclosure_marshal_VOID__FLAGS
2916  530526 Misprint in the description of the fields 'class_init' and 
2917         'class_finalize' of the structure GTypeInfo
2918  528719 Improvement to the documentation of the "g_object_connect" interface
2919  528172 gtk_signal_handlers_unblock_* functions return value
2920         amount of matched signals, not amount of actually unblocked
2921  528717 Misprint in the description of the parameter 'type_id' for 
2922         the interface g_type_register_fundamental
2923  528716 Misprint in the description of the parameter 'iface_data' for 
2924         the callback types GInterfaceInitFunc and GInterfaceFinalizeFunc 
2925  537555 GObject instantiation not thread safe
2926  537546 'desktop' shortcut in file chooser looks like a generic folder
2927  537392 Additional colon in xattr name
2928  536641 Filesystem querying in gio does not list AFS and autofs file systems
2929  528600 g_dummy_file_get_parent("scheme://example.com/")
2930  503071 Application direction changes to right to left even if theres no 
2931         translation
2932  502511 g_assert_cmphex prints invalid message
2933  338162 Use po/LINGUAS
2934  314453 Nautilus crashes in Solaris when browsing the attached file
2935  529321 make check fails in glib/pcre
2936  455215 g_get_user_special_dir: no reference about G_USER_DIRECTORY_DOWNLOAD 
2937         fallback to $HOME/Desktop if xdg-user-dirs is not in use
2938  498732 g_key_file_to_data cannot fail
2939  511367 add g_file_make_directory_with_parents
2940  531900 Use __builtin_offsetof for G_STRUCT_OFFSET if building with 
2941         gcc 4.0 or newer
2942  536158 also bump GHashTable version when a node is removed via
2943         g_hash_table_iter_remove()/g_hash_table_iter_steal()
2944  531403 g_utf8_collate broken on Mac
2945  535628 test/patterntest.c still includes gpattern.h directly
2946  535625 alias.h:2648: error: 'utime' undeclared here (not in a function)
2947
2948 * Translation updates:
2949  Arabic (ar)
2950  German (de)
2951  Italian (it)
2952  Norwegian bokmål (nb)
2953  Thai (th)
2954
2955
2956 Overview of Changes from GLib 2.16.x to GLib 2.17.0
2957 ===================================================
2958
2959 * Update to Unicode 5.1
2960
2961 * Update included libcharset to the one shipped with libiconv 0.12
2962
2963 * Update included PCRE to 7.7
2964
2965 * Enforce that only toplevel headers are directly included.
2966   This is turned on by default for GObject and GIO. To turn
2967   it on for GLib, define G_DISABLE_SINGLE_INCLUDES.
2968
2969 * Fix library version of GIO.  GLib 2.16 shipped with libgio-2.0.so.0.0.0
2970
2971 * On Solaris, use FEN for file monitoring in GIO
2972
2973 * Use the GIO_EXTRA_MODULES environment variable to find
2974   additional GIO modules 
2975
2976 * G_GNUC_ALLOC_SIZE: New macro that wraps the gcc alloc_size
2977   function attribute
2978
2979 * g_checksum_reset: New function to reset the state of a GChecksum 
2980
2981 * g_unix_mount_monitor_set_rate_limit: New function to limit the 
2982   rate at which events are reported
2983
2984 * g_file_query_file_type: New utility function to query the type of
2985   a file
2986
2987 * g_memory_output_stream_get_data_size: New function to obtain the
2988   size of the written data.
2989
2990 * Bugs fixed:
2991  522292 Gives warnings in glib/gutils.h with GCC in C99 mode
2992  523298 win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
2993  518160 replace two g_strdup_printf calls in GBookmarkFile
2994  523877 gbookmarkfile: avoid using g_string_append_printf() and
2995         other optimizations 
2996  525192 100% CPU if run main loop with no IO sources
2997  315437 extern inline -> static inline
2998  524314 g_convert() on Win32 implicitly converts full width
2999         alphanumerics into half width
3000  525732 Error in documentation for g_list_first
3001  525674 A typo in gmarkup.c
3002  448943 g_timeout_add_seconds() problems
3003  525972 UCS-4 not in the new win_iconv implementation
3004  526619 make test-report crash
3005  491554 Update to Unicode 5.1.0
3006  519137 g_slice_dup macro needs cast for 64-bit platform
3007  528752 Win32 build and SSL not working
3008  530457 G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
3009  528667 Typos in testing module documentation
3010  459905 Bug in wcwidth data
3011  534085 g_unichar_iswide_cjk() has a totally wrong table
3012  501651 Update glib/libcharset
3013  519026 G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
3014  534319 GLib's .pc files could use Libs.private
3015  534137 Typo in g_spawn_async_with_pipes doc
3016  517419 gio win32 directory monitor
3017  526796 Wrong order of arguments in g_file_copy's fallback
3018  530196 _g_local_file_has_trash_dir() doesn't handle st_dev == 0
3019  532965 Should not return filesystem::free for certain file systems
3020  525553 fix typo and nitpicking in GArray documentation
3021  526572 Missing * in declaration of parent_class in Object
3022         Destruction section of GObject Reference Manual
3023  528648 Extra >s in Object Construction section
3024  535021 g_param_spec_internal documentation should
3025         describe purpose of nick and blurb
3026  521513 Firefox crash when using file picker
3027  528433 gdesktopappinfo snafu ...
3028  533369 API g_file_info_get_attribute_string () unables to get "...
3029  521045 glib f_fstypename miscellany
3030  521672 compile error
3031  521946 control rate limit on GUnixMountMonitor
3032  522335 Fails to build: glib/gtester.c:276: error: 'ARG_MAX' unde...
3033  523015 Implement sliding window based upload operation
3034  523019 Use new GCC 4 feature
3035  523338 list nfs4 as a nfs mount type
3036  524350 Make glib build without NLS again
3037  524579 g_file_copy reports wrong total on progress callback for ...
3038  524742 A typo in gtestutils.c.
3039  524950 Minor documentation typos.
3040  525866 the user directory should not be considered as a mount to...
3041  526320 should not list mounts that the user doesn't have permiss...
3042  527132 nautilus crash when making ftp connection
3043  532852 CRITICAL **: totem_pl_parser_parse_with_base: assertion `...
3044  534759 Build failure in gio
3045  534764 Typo in error produced by g_file_make_directory
3046  521851 Redudant tests in gunixmounts.c
3047  524344 glib/gthread.h still use G_GNUC_PRETTY_FUNCTION
3048  525060 glib fails to build with -DG_DISABLE_ASSERT in CPPFLAGS o...
3049  534177 Invalid description of the interface g_cclosure_marshal_S...
3050  520715 Add GFile method g_file_query_file_type
3051  523039 nautilus can't access to trash/computer/network if gvfs i...
3052  
3053 * Updated translations:
3054  Arabic (ar)
3055  Bulgarian (bg)
3056  Catalan (ca) 
3057  Czech (cs)
3058  Greek (el)
3059  Candian English (en_CA)
3060  British English (en_GB)
3061  Spanish (es)
3062  Estonian (et)
3063  Basque (eu)
3064  Galician (gl)
3065  Hebrew (he)
3066  Hungarian (hu)
3067  Japanese (ja)
3068  Lithuanian (lt)
3069  Norwegian bokmål (nb)
3070  Dutch (nl)
3071  Occitan (oc)
3072  Portugese (pt)
3073  Russian (ru)
3074  Slovak (sk)
3075  Albanian (sq)
3076  Swedish (sv)
3077  Turkish (tr)
3078  Vietnamese (vi)
3079
3080
3081 Overview of Changes from GLib 2.16.0 to GLib 2.16.1
3082 ===================================================
3083
3084 * Fix a crash in g_themed_icon_new
3085
3086 * Update the included PCRE to 7.6
3087
3088
3089 Overview of Changes from GLib 2.15.6 to GLib 2.16.0
3090 ===================================================
3091
3092 * Fix the definition of G_INLINE_FUNC to work with gcc 4.3.0
3093
3094 * GIO:
3095  - Add missing GMountMountFlags argument to g_unix_volume_mount
3096  - Fix the adopt_orphan_mount vfunc to take a volume monitor 
3097    reference
3098  - Add properties to GThemedIcon for bindings sake
3099
3100 * Bugs fixed:
3101  520484 gvfsd-trash crashed with SIGSEGV in g_path_is_absolute()
3102  510855 g_checksum_update(): Take -1 for length.
3103  517676 g_themed_icon_new*() do more than call g_object_new().
3104  518816 should handle rmdir returning EEXIST correctly
3105  519352 g_[s]list_delete_link() docs
3106  519489 Fixes for sparse warnings in gio
3107  520169 add monitor argument to vfunc for GVolumeMonitor
3108  520700 Add type check in g_file_query_exists
3109  521145 FILE_READ_ONLY_VOLUME not present on Mingw32
3110  518720 No MIME type for empty files
3111  521013 in documentation, goffset doesn't say "Since 2.x"
3112  521028 Missleading error messages from g_io_channel_set_encoding()
3113  517484 GMainLoop could set the thread "Alertable" for APCs to be... 
3114
3115 * Updated translations:
3116  Assamese (as)
3117  Bengali India (bn_IN)
3118  Czech (cs)
3119  German (de)
3120  Spanish (es)
3121  Estonian (et)
3122  Finnish (fi)
3123  French (fr)
3124  Gujarati (gu)
3125  Italian (it)
3126  Lithuanian (lt)
3127  Malayalam (ml)
3128  Marathi (mr)
3129  Norwegian bokmål (nb)
3130  Romanian (ro)
3131  Russian (ru)
3132  Slovak (sk)
3133  Ukrainian (uk)
3134
3135  
3136 Overview of Changes from GLib 2.15.5 to GLib 2.15.6
3137 ===================================================
3138
3139 * GIO:
3140  - New file attributes: trash::item-count, filesystem::use-preview
3141  - Rename g_file_contains_file to g_file_has_prefix
3142  - g_file_query_filesystem_info grew async variants
3143  - g_themed_icon_append_name: new convenience function
3144  - g_content_type_get_icon is implemented now
3145  - Only show mounts in /media and ~
3146  - g_file_contains_file has been renamed to g_file_has_prefix
3147
3148 * Win32:
3149  - g_win32_get_package_installation_directory_of_module: new function
3150    which supersedes g_win32_get_package_installation_directory
3151  - Use alertable wait functions so that I/O completion routines or 
3152    user-mode Asynchronous Procedure Calls can be run
3153  - Fix race conditions in g_spawn implementation on win32
3154
3155 * Other:
3156  - g_uri_get_scheme has been renamed go g_uri_parse_scheme
3157
3158 * Updated translations:
3159  Arabic (ar)
3160  Belarusian Latin (be@latin)
3161  Catalan (ca) 
3162  British English (en_GB)
3163  Finnish (fi)
3164  Galician (gl)
3165  Hebrew (he)
3166  Italian (it)
3167  Kannada (kn)
3168  Norwegian bokmål (nb)
3169  Dutch (nl)
3170  Brazilian Portugese (pt_BR)
3171  Vietnamese (vi)
3172
3173
3174 Overview of Changes from GLib 2.15.4 to GLib 2.15.5
3175 ===================================================
3176
3177 * Update the included PCRE to 7.6
3178
3179 * GIO:
3180  - g_volume_should_automount: new function to determine if a volume
3181    should be mounted automatically
3182  - g_file_query_default_handler: new convenience function to get
3183    the default handler for a file
3184  - g_app_info_launch_default_for_uri new convenience function to
3185    launch the default handler for a URI
3186  - Use mimeapps.list and defaults.list as discussed on xdg list
3187    recently
3188  - g_app_info_get_default_for_uri_scheme has a real implementation
3189    now (gvfs provides a GConf-based implementation)
3190  - There is the beginning of a test suite
3191  - standard::description:  new file attribute
3192  - GMountMountFlags flags argument added to mount calls
3193
3194 * GObject:
3195  - class initialization is now threadsafe
3196
3197 * Updated translations:
3198   Arabic (ar)
3199   Catalan (ca)
3200   Spanish (es)
3201   Basque (eu)
3202   Italian (it)
3203   Japanese (ja)
3204   Kannada (kn)
3205   Korean (ko)
3206   Macedonian (mk)
3207   Occitan (oc)
3208   Portugese (pt)
3209   Brazilian Portugese (pt_BR)
3210   Swedish (sv)
3211   Thai (th)
3212
3213
3214 Overview of Changes from GLib 2.15.3 to GLib 2.15.4
3215 ===================================================
3216
3217 * G_GNUC_PRETTY_FUNCTION has been deprecated
3218
3219 * GIO:
3220  - g_file_copy has an async variant now
3221  - Drives and volumes now have API to get identifiers
3222    like Hal UDIs or UUIDs.
3223  - There is now a registration API to let modules register
3224    extensions they provide, such as volume monitor implementations
3225
3226 * Bugs fixed:
3227   511807 g_time_val_to_iso8601() uses MT-unsafe gmtime() function
3228   316260 [patch] Doc patches for gnode (2.8.1)
3229   385132 solaris gettext support fix
3230   484261 ./configure check for system PCRE unicode support fails w...
3231   510292 GOption main help not shown
3232   511580 Implement g_file_copy_async
3233   511654 Compile errors due to C99 constructs
3234   487909 g_utf8_strreverse and combining marks
3235   512381 unused variable 'is_main_group' 
3236
3237 * Updated translations:
3238   Arabic (ar)
3239   Belarusian (be)
3240   Czech (cz)
3241   Spanish (es)
3242   French (fr)
3243   Galician (gl)
3244   Portugese (pt)
3245   Russian (ru)
3246   Swedish (sv)
3247   Thai (th)
3248
3249
3250 Overview of Changes from GLib 2.15.2 to GLib 2.15.3
3251 ===================================================
3252
3253 * GChecksum:
3254  - g_checksum_update can accept nul-terminated strings
3255  - The MD5 implementation works correctly on buffers 
3256    that are longer than 64 bytes
3257
3258 * GIO:
3259  - Don't include a copy of the inotify headers, rely on system headers
3260  - g_file_find_enclosing_mount has an async variant now
3261  - Reduntant seek API on file streams has been removed
3262
3263 * Bugs fixed:
3264   508602 gmemory{in|out}putstream.c: unknown pointer size
3265   508771 There is no g_file_test/exists() for GFile
3266   508773 g_uri_escape_string() documentation unclear.
3267   509465 AM_PATH_GLIB_2_0 doesn't support gio
3268   509626 async functions: Document allowed NULL callback?
3269   509990 GSeekable documentation unclear
3270   510448 No inotify support on ARM or SH5
3271   510855 g_checksum_update(): Take -1 for length. 
3272
3273 * Updated translations:
3274   Basque (eu)
3275   Marathi (mr)
3276   Swedish (sv)
3277   Ukrainian (uk)
3278
3279
3280 Overview of Changes from GLib 2.15.1 to GLib 2.15.2
3281 ===================================================
3282
3283 * GIO:
3284  - Mount operation API change: unhandled methods get reported via 
3285    the reply, rather than by the signal emission return value
3286  - File monitor API change: Add a GError argument to g_file_monitor_file
3287  - g_unix_mount_guess_should_display(): new function
3288
3289 * Bugs fixed:
3290   508224 [PATCH] FAM backend crashes due to double free
3291   508074 GAsyncResult documentation suggests g_freeing it.
3292   508108 GFile documentation slightly unclear.
3293   508309 rpc_pipefs mount points should be hidden
3294   508378 GFileInfo documentation implies that it changes attribute...
3295   508719 g_file_get_relative_path fails if parent is root
3296   508773 g_uri_escape_string() documentation unclear.
3297
3298 * Updated translations:
3299   Arabic (ar)
3300   Spanish (es)
3301   Hebrew (he)
3302   Italian (it)
3303   Korean (ko)
3304   Turkish (tr)
3305
3306
3307 Overview of Changes from GLib 2.15.0 to GLib 2.15.1
3308 ===================================================
3309
3310  * Portability fixes:
3311  - Assertion functions are marked as noreturn again
3312  - Handling of inline functions has been fixed to work with gcc 4.3
3313  - C99 comments have been removed from headers
3314  - The nonportable sed -i option is no longer used
3315
3316  * GIO:
3317   - Clarified the semantics of g_app_info_get_all()
3318   - API for memory input and output streams has been changed a bit
3319   - GDirectoryMonitor has been removed; GFileMonitor can monitor
3320     files and directories now
3321
3322  * Bugs fixed:
3323    504829 Invalid environment passed to g_spawn_async in g_desktop_...
3324    505258 crash in Users and Groups: Adding a user
3325    505815 g_content_types_get_registered should not g_free keys
3326    491218 g_timer_new() doesn't initialize timer->end
3327    315437 extern inline -> static inline
3328    476856 Inconsistency between standard and implementation of the ...
3329    480122 g_module_open fails to open modules with ".la" extension
3330    495589 gspawn.c failing to set FD_CLOEXEC
3331    500273 doesn't build with --disable-visibility
3332    504142 Do not show empty groups in --help output
3333    504879 giofam incorrectly linked
3334    505042 add file attribute for actually used file size in bytes
3335    505058 xattr namespace docs
3336    505674 Misprint in the definition of the macro G_CCLOSURE_SWAP_DATA
3337    505730 Fails to build on OSX 10.4: _NSGetEnviron not declared
3338    505887 older darwin lacks lchown
3339    506374 gmemoryinputstream api
3340    506461 Conversion of g_assert_not_reached() and friends into fun...
3341    503051 Small bug in glib interface
3342    506395 Updates to GIO documentation
3343    507628 Missing .pc entry for gio linking against glib
3344    505195 [patch] typo in g_try_new0 docs 
3345    507822 g{file,directory}monitor changes signal problem
3346    506377 gmemoryoutputstream write implementation
3347    507835 bug in gunixinputstream 
3348
3349  * Updated translations:
3350    Arabic (ar)
3351    Belarusian Latin (be@latin)
3352    Spanish (es)
3353    Basque (eu)
3354    Irish (ga)
3355    Hebrew (he)
3356    Occitan (oc)
3357    Vietnamese (vi)
3358
3359
3360 Overview of Changes from GLib 2.14.x to GLib 2.15.0
3361 ===================================================
3362
3363 Major new features:
3364
3365  * GIO: a VFS API, designed to replace GnomeVFS. The GIO implementation 
3366    in GLib has support for local filesystems. The new, separate gvfs 
3367    module contains various backend implementations (cifs, ftp, sftp,
3368    http, ...)
3369
3370  * GChecksum: provides various hash algorithms, such as MD5, SHA-1
3371    and SHA-256
3372  
3373  * GTest: a test framework 
3374  
3375 Smaller additions:
3376
3377  * GHash:
3378  - GHash has iterators, as an alternative to g_hash_table_foreach
3379
3380  * GMarkup: 
3381  - g_markup_parse_context_get_element_stack: New function to
3382    get the stack of open elements
3383  - G_MARKUP_PREFIX_ERROR_POSITION: New flag to improve error
3384    reporting
3385  - g_markup_collect_attributes: Convenience function for handling
3386    attributes
3387
3388 * GKeyFile: 
3389  - Functions that take a GError now return a boolean to indicate 
3390    success, instead of void
3391  - Various performance improvements
3392
3393 * GAsyncQueue:
3394  - g_async_queue_new_full: new function that allows to specify
3395    a free function for leftover elements
3396  
3397 * GError:
3398  - g_prefix_error and g_propagate_prefixed_error: New functions
3399    to ease error propagation
3400
3401 * Internationalization:
3402  - C_: A new 2-argument variant of the Q_() macro 
3403  - Use native character set conversion API on Windows
3404
3405 * GLib builds with automake 1.10
3406
3407 * Bugs fixed:
3408  455725 specific combination of g_utf8_strlen and g_pattern_match...
3409  467537 g_convert_with_iconv() not resetting iconv() state correc...
3410  497033 Commandline option parser should warn about missing optio...
3411  504527 gchecksum: Conditional jump or move depends on uninitiali...
3412  445362 Non-numeric local labels in gatomic.c are causing linker ...
3413  482313 gregex: no way to tell why compilation failed
3414  317775 main loops continues to run after g_main_loop_quit() has ...
3415  418778 Insufficient pkg-config version requirement
3416  436293 g_option_context_new() doc should mention that the string...
3417  466557 glib-mkenums shifts ARGV[0] to undefined
3418  468882 GKeyFile doesn't accept "True" as a true boolean value
3419  469551 application --help messages are garbaged on none UTF-8 lo...
3420  479724 Memory leak upon calling "g_main_loop_run" in the seconda...
3421  490061 outptrs uninitialized after g_parse_long_long
3422  490637 gobject documentation patch
3423  495294 glib-genmarshal prints warnings but returns 0
3424  496046 option to prefix location of errors for GMarkup
3425  498113 tests/regex-test fails on 64bit environment
3426  500506 Fails to build on OSX 10.4
3427  500638 gkeyfile speedup ...
3428  500875 Make check fails as there is no "test" target for "build"...
3429  502511 g_assert_cmphex prints invalid message
3430  502927 g_array_index triggers cast aligment warning
3431  503029 g_time_val_from_iso8601 parse non-ISO8601 dates
3432  503222 Need context to translate
3433  503420 gkeyfile leaks a hash table
3434  503470 Fix build when builddir != srcdir
3435  504227 Inverse variant for g_test_trap_assert_stdout, g_test_tra...
3436  71704  file include order
3437  491957 Misprint in the specification of the interface "g_main_co...
3438  491959 Misprint in description of the structure "GThreadPool"
3439  491965 Mistype in the specification of the function "g_hook_list...
3440  491966 Misprint in the specification of the interface "g_main_co...
3441  491968 The documentation does not mention the restriction for th...
3442  491970 The documentation for the interface "g_date_clamp" is inc...
3443  491974 The documentation of the interface "g_main_context_iterat...
3444  491975 The documentation for the interfaces "g_io_channel_read_u...
3445  491979 Misprint in the description of the interfaces g_key_file_...
3446  491982 Misprint in the description of the interface "g_key_file_...
3447  501107 EXTRA_DIST automake warnings
3448  501997 g_utf8_normalize() returns NULL on invalid string
3449  502590 C_/g_dpgettext efficiency
3450  464259 g_set_application_name() docs should say "Since 2.2"
3451  496518 gbase64.c API doc clarification
3452  498728 g_key_file_get_*_list should set length to 0 when returni...
3453  500361 Improve docs for g_array_free() and g_ptr_array_free()
3454  501853 g_checksum_get_digest docs
3455  503862 Allow NULL strings in g_parse_debug_string()
3456  142676 Q_
3457  367550 Add g_async_queue_new_full() with GDestroyNotify function
3458  375651 Minor enhancements to GKeyFile API
3459  443648 MD5 digest support
3460  449937 Upgrade auto* sources to be clean under automake1.9
3461  452887 gmarkup context "get element" function is useless when ca...
3462  491549 [PATCH] Eliminate libiconv dependency on Windows
3463  500507 GHashTableIter API 
3464
3465 * Translation updates
3466  Belarusian Latin (be@latin)
3467  Czech (cs)
3468  German (de)
3469  Spanish (es)
3470  Esperanto (et)
3471  French (fr)
3472  Korean (ko)
3473  Marathi (mr)
3474  Norwegian bokmål (nb)
3475  Brazilian Portugese (pt_BR)
3476  Slovenian (sl)
3477  Swedish (sv)
3478
3479
3480 Overview of Changes from GLib 2.14.2 to GLib 2.14.3
3481 ===================================================
3482
3483 * Update PCRE to 7.4
3484
3485 * Bugs fixed:
3486  487491 Fix some warnings from sparse
3487  488068 Small (one-time) memory leak in glib_gettext initialization
3488  493688 TYPE macro "_get_type ()" is documented wrong
3489
3490 * Updated translations:
3491  Arabic (ar)
3492  Belarusian Latin (be@latin)
3493  Estonian (et)
3494  Irish (ga)
3495  Slovenian (sl)
3496
3497  
3498 Overview of Changes from GLib 2.14.1 to GLib 2.14.2
3499 ===================================================
3500
3501 * Bugs fixed:
3502  476849 Invocation of the interface "g_hook_free" fails in certai...
3503  359165 marshallers can throw warnings with -Wunused
3504  477957 more discussion on g_value_set_object vs. g_value_take_ob...
3505  478459 G_DEFINE_DYNAMIC_TYPE_EXTENDED doesn't work with G_IMPLEM...
3506  483337 inline is disabled for MSVC when compiling C code
3507  478349 Broken link to gettext website
3508  469231 g_spawn optimization for setting all open fds to CLOEXEC 
3509
3510 * Updated translations:
3511 Arabic (ar)
3512 Galician (gl)
3513 Hebrew (he)
3514 Korean (ko)
3515
3516
3517 Overview of Changes from GLib 2.14.0 to GLib 2.14.1
3518 ===================================================
3519
3520 * Bugs fixed:
3521  476840 Invocation of the interface "g_utf8_strreverse" crashes f...
3522  444765 Fix FIXME in gregex.c when new pcre is out
3523  464145 g_markup_escape_text Produces Invalid XML
3524  465625 g_type_default_interface_ref() does not ensure working g_...
3525  466768 Clearify that comments can be put anywhere in a Key-file.
3526  474229 The GError documentation should give convention for the G...
3527  474899 G_BREAKPOINT() docs inaccurate
3528  475854 Overuse of -lpcre when using system pcre
3529  473879 Incorrect includes in gregex.c
3530  468694 Typoes in documentation
3531  469051 g_snprintf () talks about characters where it probably me...
3532  457601 Missing arch specific atomic implementation
3533  475923 Missing pcre flags when static-linking against glib
3534  475619 glibthread-2.0.la does not list -lpthread
3535
3536 * Updated translations:
3537  Bulgarian (bg)
3538  Catalan (ca)
3539  Danish (da)
3540  German (de)
3541  Canadian English (en_CA)
3542  British English (en_GB)
3543  Spanish (es)
3544  Estonian (et)
3545  Finnish (fi)
3546  French (fr)
3547  Gujarati (gu)
3548  Hungarian (hu)
3549  Italian (it)
3550  Georgian (ka)
3551  Kannada (kn)
3552  Lithuanian (lt)
3553  Makedonian (mk)
3554  Norwegian (nb)
3555  Dutch (nl)
3556  Polish (pl)
3557  Portugese (pt)
3558  Brazilian Portugese (pt_BR)
3559  Romanian (ro)
3560  Russian (ru)
3561  Albanian (sq)
3562  Serbian (sr, sr@Latn)
3563  Swedish (sv)
3564  Tamil (ta)
3565  Thai (th)
3566  Ukrainian (uk)
3567  Vietnamese (vi)
3568
3569
3570 Overview of Changes from GLib 2.13.7 to GLib 2.14.0
3571 ===================================================
3572
3573 * Last-minute API additions:
3574  - Make g_unichar_combining_class public
3575  - Add goffset type, add G_MAXSSIZE and G_MINSSIZE
3576
3577 * Update PCRE to 7.2
3578
3579 * Bugs fixed:
3580  453998 Make _g_unichar_combining_class() public
3581  462549 gregex.c: variable is declared at middle of block
3582  417068 g_file_test doc inconsistency
3583
3584 * Updated translations:
3585  Assamese (as)
3586  Basque (eu)
3587  Kannada (kn)
3588  Malayalam (ml)
3589  Dutch (nl)
3590  Polish (pl)
3591  Brazilian Portugese (pt_BR)
3592  Turkish (tr)
3593
3594
3595 Overview of Changes from GLib 2.13.6 to GLib 2.13.7
3596 ===================================================
3597
3598 * The memory corruption warning from the slice allocator that
3599   occurred when threads were initialized after the slice allocator
3600   has been removed, as the slice allocator now works fine
3601   in this scenario.
3602
3603 * New functions g_once_init_enter() and g_once_init_leave() make
3604   it easier to write threadsafe one-time initialization functions 
3605  
3606 * Bugs fixed:
3607  454473 Simple XML Subset Parser terminates on invalid XML
3608  445813 g_module_open error, add file name
3609  453796 errno gets clobbered by g_filename_display_name
3610  341988 don't use "-c" with msgfmt in Makefile.in.in
3611  447048 Please produce slightly more output during long tests
3612  454785 GModule documentation lists same block of code twice.
3613  454786 GModule documentation lists same paragraph twice.
3614  383155 small docs quirks in gobject/closure API documentation
3615  65041  _get_type() functions aren't thread safe
3616
3617 * Updated translations
3618  Assamese (as)
3619  Spanish (es)
3620  Gujarati (gu)
3621  Japanese (ja)
3622  Korean (ko)
3623  Macedonian (mk)
3624
3625
3626 Overview of Changes from GLib 2.13.5 to GLib 2.13.6
3627 ===================================================
3628
3629 * Reintroduce a GType typedef whose removal in 2.13.5
3630   caused trouble for C++ bindings
3631
3632 * Bugs fixed:
3633  450216 docs not explicit enough about g_free()
3634  451459 g_type_register_static_simple calls g_type_register_static
3635
3636 * Updated translations
3637  Norwegian bokmål (nb)
3638  Sinhala (si)
3639
3640
3641 Overview of Changes from GLib 2.13.4 to GLib 2.13.5
3642 ===================================================
3643
3644 * xdg-user-dirs support: 
3645  - the Desktop directory is guaranteed to be defined
3646  - user-dirs.dirs is no longer reloaded on changes
3647
3648 * Slice allocator: 
3649  - new api to duplicate slices
3650
3651 * Regular expression support:
3652  - GRegex is a boxed type now
3653
3654 * Bugs fixed:
3655  44793 make check failing in trunk
3656  354522 Small problem with PLT hiding 6 symbols
3657  363986 glib 2.12.4 does not compile with SGI IDO cc
3658  443869 g_type_class_add_private doesn't warn when adding 0-sized...
3659  446859 Legitimately return 0 for g_quark_from_string(NULL)
3660  447534 Small typo in g_timeout_add_seconds() doc
3661  447583 GStaticRWLock
3662  447935 g_get_current_dir SIGSEGV on long path
3663  448260 CLAMP has surprising result if low > high
3664  57693  g_string_vprintf()
3665  442029 add g_slice_dup()
3666  445065 Add GRegex boxed type
3667  448819 Add full version of g_timeout_add_seconds()
3668
3669 * Updated translations: 
3670  Swedish (sv)
3671  Oriya (or)
3672  Hebrew (he)
3673  Spanish (es)
3674  Estonian (et)
3675
3676  
3677 Overview of Changes from GLib 2.13.3 to GLib 2.13.4
3678 ===================================================
3679
3680 * Bugs fixed:
3681  444121 g_get_user_special_dir deadlocks
3682  444161 invalid UTF8 in key name shows up as valgrind error in g_...
3683  444130 g_option_context_get_help() is broken when there's a desc...
3684
3685
3686 Overview of Changes from GLib 2.13.2 to GLib 2.13.3
3687 ===================================================
3688
3689 * GKeyFile:
3690  - Added defines for easier handling of desktop files
3691
3692 * Unicode support:
3693  - Update g_unichar_iswide_cjk for Unicode 5.0
3694
3695 * Regular expression support:
3696  - GRegex structs can now be ref-counted
3697  - Some new functions for dealing with incremental 
3698    replacement have been added
3699  - The GRegexEvalCallback signature has been changed
3700
3701 * g_get_user_special_dir() has been added to support
3702   xdg-user-dirs
3703
3704 * Bugs fixed:
3705  419376 Functions using named subpatterns behave inconsistently w...
3706  434358 g_regex_fetch_named() and g_regex_fetch_named_pos() are b...
3707  423708 typo in the README.win32 file see patch below
3708  339225 Add new defines for easier handling of .desktop files 
3709  442265 API additions/changes for GRegex
3710  432651 Add a glib-ish xdg_user_dir_lookup
3711
3712 * Updated translations:
3713  Estonian (et)
3714  Norwegian bokmål (nb)
3715
3716
3717 Overview of Changes from GLib 2.13.1 to GLib 2.13.2
3718 ===================================================
3719
3720 * Unicode support:
3721  - Add g_unichar_ismark()
3722
3723 * GOption:
3724  - Allow to use callbacks for remaining args
3725
3726 * Updated translations:
3727   Belarusian Latin (be@latin)
3728   British English (en_GB)
3729   Galician (gl)
3730   Norwegian bokmål (nb)
3731   Oriya (or)
3732   Spanish (es)
3733   Thai (th)
3734
3735
3736 Overview of Changes from GLib 2.13.0 to GLib 2.13.1
3737 ===================================================
3738
3739 * GRegex:
3740  - Portability fixes
3741  - Split into immutable GRegex and GMatchInfo
3742  - Add g_regex_get_max_backref() and g_regex_get_capture_count()
3743    to obtain information about the compiled regex
3744
3745 * GKeyFile:
3746  - Fix roundtrip problems
3747  - Add g_key_file_load_from_dirs()
3748
3749 * Unicode support:
3750  - Fix corner cases in case conversion routines
3751
3752 * GOption:
3753   - Add a function to get the formatted help string
3754
3755 * GHash:
3756  - Add new functions g_hash_table_get_keys() and
3757    g_hash_table_get_values() to retrieve the keys and
3758    values in list form
3759
3760 * Updated transations:
3761   Simplified Chinese (zh_CN)
3762   Arabic (ar)
3763
3764
3765 Overview of Changes from GLib 2.12 to GLib 2.13.0
3766 =================================================
3767
3768 * Add GSequence, a list that is implemented using
3769   a balanced binary tree.
3770
3771 * Add GRegex, an implementation of Perl regular expressions,
3772   based on PCRE.
3773  
3774 * Use Posix monotonic clocks instead of gettimeofday()
3775   for GTimer when available.
3776
3777 * Support static initialization of GQeues with G_QUEUE_INIT,
3778   g_queue_init() and g_queue_clear().
3779
3780 * Add g_string_chunk_clear() for clearing a 
3781   GStringChunk.
3782
3783 * Add g_unichar_get_script() to obtain Unicode
3784   script information.
3785
3786 * Add g_unichar_iszerowidth() to obtain information
3787   about zero-width characters.
3788
3789 * Add G_GNUC_MAY_ALIAS which wraps the gcc may_alias 
3790   type attribute.
3791
3792 * G_GNUC_INTERNAL has a working definition for the
3793   Sun Studio compiler. This requires the macro to
3794   be positioned before the function declaration.
3795
3796 * The slice allocator can produce detailed debugging
3797   information with G_SLICE=debug-blocks.
3798
3799 * Modules support G_DEBUG flags resident-modules and
3800   bind-now-modules.
3801
3802 * Add G_DEFINE_DYNAMIC_TYPE() to make it easier
3803   to define types in modules.
3804
3805 * Bug fixes: too many to list them in detail here.
3806
3807 * New and updated translations (be,bg,bn,ca,cs,de,
3808   en_CA,en_GB,et,fa,fr,he,hu,it,ja,ku,lt,mg,mk,ml,
3809   nb,ne,nn,pt,pt_BR,ro,sr,sr@Latn,sv,ta,uk,vi,zh_CN,
3810   zh_HK,zh_TW)
3811
3812
3813 Overview of Changes from GLib 2.12.1 to GLib 2.12.2
3814 ===================================================
3815
3816 * Unicode updates:
3817  - Normalization is following Unicode TR #29
3818  - g_unichar_isxdigit() only accept characters
3819    for which g_unichar_xdigit_value() returns a value
3820  - g_unichar_toupper and g_unichar_tolower leave
3821    unconvertable characters in place instead of
3822    replacing them by NUL
3823
3824 * Bugs fixed
3825  348491 g_utf8_strup() and g_utf8_strdown() returns 
3826         string with NUL bytes
3827  349825 GKeyFile always inserts a newline before a group
3828  347842 g_unichar_isxdigit() is too general about what 
3829         it considers a digit
3830  348694 g_utf8_normalize() hasn't been updated to PR #29
3831  348785 Hint about G_DEBUG in Message Logging docs
3832  349792 Wrong english string (UI)
3833  349952 gparamspecs.c uses gcc feature
3834
3835 * Translation updates (ca,cs,de,dz,es,eu,fi,gu,ko,
3836   nl,pl,tr,uk,zh_HK,zh_TW)
3837
3838
3839 Overview of Changes from GLib 2.12.0 to GLib 2.12.1
3840 ===================================================
3841
3842 * Update to final Unicode Character Database 5.0.0
3843
3844 * Bugs fixed:
3845  346660 issues with base64 api documentation / g_base64_decode_cl...
3846  348136 Coverity reports allocation of wrong size CID #2839
3847  336281 Update to UCD 5.0
3848  346197 g_date_strftime %F option doesnt work for win32
3849  348011 Small optimization to real_toupper()
3850  246494 prototype mismatch in glib/gconvert.c
3851
3852 * New and updated translations (bg,bn_IN,ca,dz,eu,fi,
3853   fr,he,it,ja,mk,or,pt)
3854
3855
3856 Overview of Changes from GLib 2.11.4 to GLib 2.12
3857 =================================================
3858
3859 * Bugs fixed:
3860  344905 leap-year bug in g_time_val_from_iso8601 w/o HAVE_TIMEGM
3861
3862 * Updated translations (cy,nb,nl)
3863
3864
3865 Overview of Changes from GLib 2.11.3 to GLib 2.11.4
3866 ===================================================
3867
3868 * GBookmarkFile:
3869  - g_bookmark_file_remove_item returns a boolean
3870  
3871 * g_mkstemp accepts the XXXXXX in the middle of
3872   the template
3873  
3874 * Bugs fixed:
3875  344868 g_key_file_to_data should separate groups 
3876
3877 * Updated translations (de,es,fr,gu,hi,ko,th)
3878
3879
3880 Overview of Changes from GLib 2.11.2 to GLib 2.11.3
3881 ===================================================
3882
3883 * GBookmarkFile:
3884   - g_bookmark_file_move_item: Return TRUE in case of
3885     an empty target
3886
3887 * Bugs fixed: 
3888  343919 gunicollate.c: strxfrm bug on VC8
3889
3890 * Updated translations (fi)
3891
3892 Overview of Changes from GLib 2.11.1 to GLib 2.11.2
3893 ===================================================
3894
3895 * Add g_ascii_stroll to parse signed 64bit integers
3896
3897 * GMarkup: add a flag to treat CDATA as text
3898
3899 * GHashTable: add functions to remove all entries
3900
3901 * GMainLoop: add functions to find the currently
3902   running source, and determine if it is destroyed
3903
3904 * Bug fixes:
3905  342563  g_atomic_thread_init() needs to be called before 
3906          other _g_*_thread_init() functions
3907  343548  Potential use after free in callers of g_string_free() 
3908  168538  Wish: Clearing contents of GHashTables
3909  321886  GTK+ cannot be reliably used in multi-threaded 
3910          applications
3911  341826  goption.c: 'strtoll' is C99's function
3912  343899  g_ascii_formatd dosn't work as expected for all 
3913          format strings
3914  317793  Make GEnumValue strings const
3915  337129  Compile warnings in G_IMPLEMENT_INTERFACE
3916  303622  What is G_TYPE_CHAR?
3917
3918 * Updated translations (bg,dz,eu,gl,ja,ko,nl,th,vi)
3919  
3920
3921 Overview of Changes from GLib 2.11.0 to GLib 2.11.1
3922 ===================================================
3923
3924 * GOption  
3925   - Support 64-bit integers 
3926   - Allow optional text before and after the options
3927     in help output
3928
3929 * Bug fixes:
3930  340538 gbase64-test writes OOB 
3931  340816 GKeyFile set_string_list invalid memory reads 
3932  339105 g_key_file_parse_value_as_double
3933  340434 convert-test.c fails (function test_one_half)
3934  311043 Memory leaks (and potential infinite loops) 
3935         when using G_ERRORCHECK_MUTEXES
3936  335198 Error checking mutexes are fubar  
3937  341237 Add a G_OPTION_ARG_INT64
3938  341192 g_io_channel_set_flags not implemented on win32
3939  336120 Allow adding description before/after GOption 
3940         --help output body
3941  341191 misplaced check in g_relation_delete
3942  340530 mismatched calloc / g_free in win32 threads
3943
3944 * Updated translation (es)
3945
3946 Overview of Changes from GLib 2.10.x to GLib 2.11.0
3947 ===================================================
3948
3949 * GBookmarkFile: a parser for files containing bookmarks
3950   stored using the Desktop Bookmark specification.
3951
3952 * Base64 encoding support
3953         
3954 * Unicode 5.0 support
3955
3956 * GOption supports floating point numbers 
3957
3958 * GKeyFile supports floating point numbers
3959
3960 * Bug fixes:
3961  155884 gatomic.c should be based on new SDK
3962  157877 update-desktop-database doesn't handle duplicate entries
3963  164719 keyfile parser doesn't support floats
3964  327662 Import BookmarkFile from libegg
3965  329548 Add G_OPTION_ARG_DOUBLE
3966  329789 option-test.c type confusion
3967  332841 Segmentation Fault when %llu is passed to vasnprintf and 
3968         HAVE_SNPRINTF is not defined
3969  333879 gthread/gthread-win32.c: IsDebuggerPresent needs '#define 
3970         _WIN32_WINDOWS 0x0401'
3971  333916 g_timer_elapsed docs should mention that microseconds 
3972         may be NULL
3973  334440 dlerror() portability issue causes crash on (old) a.out 
3974         NetBSD platform
3975  334646 goption + error out params
3976  334799 g_remove() must check return value of remove()
3977  334943 make check FAIL: threadpool-test
3978  335215 Some breakages with GThreadPool
3979  336085 g_option_context_new parameter lacks better explanation
3980  336677 Documentation for g_object_ref_sink() is incorrect
3981  337027 gbookmarkfile.c: sys/time.h include error
3982  337553 Wrong escaping of URIs
3983  338572 Dereferencing NULL value in g_key_file_get_group_comment
3984  338845 g_completion_complete_utf8 crashes when NULL is passed to it
3985  339337 g_bookmark_file_set_description
3986  339338 gbookmarkfile.c, function expand_exec_line
3987  339340 gbookmarkfile.c, function bookmark_app_info_dump
3988
3989 * Translation updates (bg,en_GB,et,gl,gu,he,hi,ka,nb,nl,nn,
3990                        or,pt_BR,ro,tr,vi,zh_CN)
3991
3992
3993 Overview of Changes from GLib 2.10.0 to GLib 2.10.1
3994 ===================================================
3995
3996 * Bugs fixed:
3997  314794 Broken pthread detection on Darwin [Gregor Riepl]
3998  322476 Missing check for .dylib [Vladimir Panov]
3999  333651 Inconsistent _g_charset_get_aliases prototype [Julio 
4000         M. Merino Vidal]
4001  333761 GInitiallyUnowned breaks application code [Sven Herzberg]
4002
4003 * Win32 changes:
4004  - Fix g_listenv() implementation.
4005  - Allow up to 100 GPrivate structs
4006
4007 * Translation updates (fr,hu,lt,pl,sv)
4008
4009
4010 Overview of Changes from GLib 2.9.6 to GLib 2.10.0
4011 ==================================================
4012
4013 * Bugs fixed:
4014  328997 64bit pointer trunction in glib slab-allocator
4015         [Pascal Hofstee]
4016  331110 g_cond_broadcast(inform_cond) without holding 
4017         inform_mutex [Chris Wilson, Sebastian Wilhelmi]
4018  332093 Fix some leaks in the tests [Kjartan Maraas]
4019  332435 g_utf8_strlen returns wrong value if a maximum 
4020         number of bytes to check is specified 
4021         [Matthias Clasen]
4022  331367 gslice requires more POSIX-like semantics for 
4023         GPrivate destructors [Tor Lillqvist]
4024
4025 * Documentation improvements [Matthias, Kang Jeong-Hee,
4026   Tor Lillqvist, Stefan Kost]
4027
4028 * Translation updates (el,eu,ka,uk)
4029
4030 Overview of Changes from GLib 2.9.5 to GLib 2.9.6
4031 =================================================
4032
4033 * Bugs fixed: 
4034  329124 distclean removes README [Kjartan Maraas, Tim Janik]
4035  317679 GRelation field type not documented [Behdad Esfahbod]
4036  329123 Typo in GTime docs [Kjartan Maraas]
4037
4038 * Documentation improvements [Sven Herzberg, David
4039   Schleef, Kjartan Maraas, Behdad Esfahbod]
4040
4041 * Translation updates (cs,cy,it,ko,pt,sq,sr,sr@Latn,ru
4042
4043 Overview of Changes from GLib 2.9.4 to GLib 2.9.5
4044 =================================================
4045
4046 * Memory management: 
4047   Runtime debugging support: The slice allocator
4048   can be turned off by setting G_SLICE=always-malloc
4049   in the environment. Zeroing of freed memory can
4050   now be turned on at runtime by setting
4051   G_DEBUG=gc-friendly in the environment. [Tim Janik]
4052
4053 * Bugs fixed:
4054  328253 HP-UX/IA-64 uses ".so" as default shared library 
4055         extension [Albert Chin]
4056  143380 unicode-encoding test fails converting to UTF-16 
4057         with libiconv [Marc Moorcroft]
4058  328254 Build breakage (GSlice) [Jens Ganseuer]
4059  328705 C99ism in glib/gmem.c [Kazuki Iwamoto]
4060
4061 * Translation updates (da,et,zh_CN)
4062
4063 Overview of Changes from GLib 2.9.3 to GLib 2.9.4
4064 =================================================
4065
4066 * Type system:
4067   Fix a problem with g_object_compat_control() which 
4068   can lead to segfaults in GTK+ applications on 64bit 
4069   platforms. 
4070
4071 * Thread suppport: 
4072   Unused threads now fall back to the global pool after 
4073   500 milliseconds, where they wait for another 
4074   max-idle-time milliseconds. [Sebastian Wilhelmi]
4075
4076 * Fix a memory allocation problem in GKeyFile. [Morten 
4077   Welinder]
4078
4079
4080 Overview of Changes from GLib 2.9.2 to GLib 2.9.3
4081 =================================================
4082
4083 * GTree:
4084  - Replace the simple recursive implementation by
4085    a nonrecursive, threaded one  [Maurizio Monge]
4086
4087 * Change g_filename_display_name and
4088   g_filename_display_basename to use the Unicode
4089   replacement character U+FFFD instead of a question
4090   mark, and don't append "(invalid encoding)"  [Matthias]
4091
4092 * Documentation improvements [Sven Herzberg, Federico
4093   Mena Quintero, Stefan Kost]
4094
4095 * Bugs fixed:
4096  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X 
4097         [Bogdan Nicula]
4098  326558 Some test failures on IRIX 6.5 [Daichi Kawahata]
4099  169285 "threaded" tree implementation for GTree 
4100         [Maurizio Monge]
4101  326747 g_filename_display_basename adds (invalid encoding) 
4102         [Alberto Ruiz]
4103
4104 Other contributors: Christian Kellner, Murray Cumming
4105
4106 New and updated translations (bg,ca,de,es,et,gu,ja,nl,th,vi)
4107
4108
4109 Overview of Changes from GLib 2.9.1 to GLib 2.9.2
4110 =================================================
4111
4112 * Memory management:
4113  - Add tests for cache colorization [Tim Janik]
4114  - Minimize space consumption if small amounts of differently
4115    sized slices are allocated, at a small performance cost.  [Tim]
4116
4117 * Thread support:
4118  - Add g_atomic_pointer_set() and g_atomic_int_set() [Tim Janik,
4119    Sebastian Wilhelmi]
4120  - Add g_thread_pool_set_sort_function() to allow sorting the 
4121    tasks of a threadpool.  [Martyn Russell]
4122  - Add g_thread_pool_set_idle_time() to allow unused threads
4123    to exit after a certain time.  [Martyn]
4124
4125 * Type system:
4126  - introduce a new type GInitiallyUnowned, which has an initial
4127    floating reference. [Tim]
4128  - Add support for GType parameters. [Matthias]
4129
4130 * Main loop:
4131  - Add g_main_context_is_owner() to determine if the current
4132    thread is the owner of the context.  [Michael Meeks]
4133
4134 * Provide g_access(), g_chdir(), g_unlink(), g_rmdir() as 
4135   wrapper functions instead of macros.  [Manish Singh]
4136
4137 * Documentation improvements [Tim, Matthias, Federico Mena Quintero,
4138   Stefan Kasal, Dan Williams]
4139
4140 * New and updated translations (en_CA,fi,fr,gl,ml,nb,no,zh_HK,zh_TW)
4141
4142 * Bugs fixed:
4143  324179 g_allocator_new() returns pointer to const dummy which Gtk+ 2.8 
4144         tries to modify [J. Ali Harlow]
4145  324332 g_option_context_parse() returns false without setting error 
4146         [Tim-Philipp Müller]
4147  324950 GLIB 2.9.1 testcase errors [Dan Yefimov]
4148  325015 gslice.c: process.h is needed on Windows [Kazuki Iwamoto]
4149  321978 G_DATALIST_GET_FLAGS() macro is not casting datalist to 
4150         gpointer [Andrew Paprocki]
4151  316221 G_LOCK warns about breaking strict-aliasing [Michal Benes, 
4152         Stanislav Brabec]
4153  325273 Error in documentation for glib_check_version () [Declan Naughton]
4154  325310 g_spawn_sync hangs when catching both stdout and 
4155         stderr [Tor Lillqvist]
4156  325249 gcc warning when using g_rmdir from <glib/gstdio.h> [Jani Monoses]
4157  325864 glib/gthreadpool.c:"#define debug(...)" is C99 [Kazuki Iwamoto]
4158  325874 Should say somewhere that source IDs are > 0 [Dan Williams]
4159  325438 a typo (compatability) [Stefan Kasal]
4160  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X [Bogdan Nicula]
4161
4162
4163 Overview of Changes from GLib 2.9.0 to GLib 2.9.1
4164 =================================================
4165
4166 * Memory management
4167  - The slice allocator is implemented [Tim Janik]
4168  - g_slice_free_chain() has been renamed to 
4169    g_slice_free_chain_with_offset()  [Tim, Behdad Esfahbod]
4170  - Mem chunks are deprecated [Matthias Clasen]
4171
4172 * Data structures
4173  - Hash tables are refcounted, and have a boxed type [Tim]
4174
4175 * Thread support
4176  - Support for Solaris threads has been removed 
4177    [Sebastian Wilhelmi, Andrew Paprocki]
4178  - g_async_queue_sort(), g_async_queue_push_sorted() have 
4179    been added to allow GAsyncQueue to be used as a priority 
4180    queue, together with the corresponding _unlocked 
4181    variants  [Martyn Russell]
4182
4183 * GObject:
4184  - The concept of a floating initial reference has been
4185    moved from GtkObject to GObject [Tim]
4186
4187 * Win32 changes:
4188  - Make g_rename() replace existing files [Tor Lillqvist]
4189
4190 * Misc new API:
4191  - G_GUINT64_CONSTANT macro to define guint64 
4192    constants [Andrew Paprocki]
4193  - G_GNUC_WARN_UNUSED_RESULT macro to instruct the 
4194    compiler to emit a warning if the value returned
4195    by a function is ignored. [Arjan van de Ven, Alex Larsson]
4196  - GList and GSList now have sort functions which take an
4197    extra user data argument [Martyn Russell]
4198  - g_param_spec_ref_sink() has been added for consistency [Tim]
4199
4200 * $LOGNAME is respected when determining user data. [Laszlo Peter]
4201
4202 * Other changes and bug fixes [Tim, Matthias, Behdad, 
4203   Christian Persch, Benedikt Meurer, Andrew Paprocki, 
4204   Kazuki Iwamoto, Alexis S. L. Carvalho, Stanislav Brabec,
4205   Andreas Schwab, Kalle Vahlman]
4206
4207 * Documentation
4208  - Deprecation warnings carry version information [Matthias]
4209  - The slice allocator has been documented [Matthias, Tim]
4210  - Other improvements [Morten Welinder]
4211
4212 Overview of Changes from GLib 2.8.x to GLib 2.9.0
4213 =================================================
4214 * Unicode support:
4215  - The Unicode tables have been updated to Unicode 4.1, 
4216    adding several new values to the GUnicodeBreakType 
4217    enumeration. This breaks Pango <= 1.10 
4218    [Behdad Esfahbod]
4219  - The various Unicode character predicate functions 
4220    (g_unichar_isalpha, g_unichar_isdigit,...) have
4221    been optimized
4222    [Behdad]
4223  - g_utf8_pointer_to_offset, g_utf8_offset_to_pointer:
4224    These functions handle negative offsets now, and
4225    going backwards in g_utf8_offset_to_pointer uses
4226    "stutter stepping".
4227    [Larry Ewing, Matthias Clasen]
4228
4229 * Memory management:
4230  - Mem chunks are no longer used internally in GLib and
4231    GObject. GMemChunk will be deprecated in GLib 2.10
4232  - All APIs based on GAllocator (g_list_push/pop_allocator,
4233    and similar push/pop_allocator functions for other
4234    data structures) have been deprecated, since they
4235    never worked as intended.
4236  - The g_slice_* functions have been added as a 
4237    new API for fast allocation of small memory blocks. 
4238    The implementation in GLib 2.9.0 is just a simple 
4239    wrapper around malloc. GLib 2.10 will have an
4240    efficient and scalable implementation. 
4241    [Tim Janik, Matthias]
4242
4243 * Pattern matching:
4244  - g_pattern_match has been optimized to avoid
4245    unnecessary recursion.
4246    [Tim, Matthias]
4247
4248 * g_intern_string, g_intern_static_string: 
4249  - New functions to intern strings. These are now used 
4250    by GObject to avoid duplicating static strings 
4251    [Matthias]
4252
4253 * g_thread_foreach: 
4254  - New function to iterate over all GThreads 
4255    [Tim, Matthias]
4256
4257 * g_date_set_time_t, g_date_set_time_val:
4258  - New functions to set a GDate from a time_t or
4259    GTimeVal value. g_date_set_time has been deprecated 
4260    in favor of these.
4261    [Roger Leigh]
4262
4263 * g_snprintf and g_vsnprintf:
4264  - These functions are no longer declared in gprintf.h, 
4265    since they are in glib.h
4266    [Matthias]
4267
4268 Overview of Changes from GLib 2.8.0 to GLib 2.8.1
4269 =================================================
4270 * Optimize single-character insertions in GString [Ross Burton]
4271 * Fix build problems on OS X
4272 * Fix build problems on Win32 [Tor Lillqvist, Hans Breuer]
4273 * Other bug fixes [Matthew F. Barnes, Stepan Kasal] 
4274 * Documentation improvements [Tristan van Berkom, Behnam
4275   Esfahbod, Gustavo Carneiro, Stepan Kasal, Matthias]
4276 * New and updated translations (ca,cy,ko,ro,uk)
4277
4278 Overview of Changes from GLib 2.7.7 to GLib 2.8.0
4279 =================================================
4280 * Make g_value_transform() handle enum values
4281   correctly on ppc64.  [Michael Lorenz]
4282   (Third-party code accessing enumeration values 
4283   in GValues should also be changed to access 
4284   v_long, not v_int, in order to work on bigendian 
4285   64bit machines.)
4286 * Make g_flags_get_first_value() handle a value
4287   of 0 meaningfully. [Tim-Philipp Müller] 
4288
4289 Overview of Changes from GLib 2.7.6 to GLib 2.7.7
4290 =================================================
4291 * Make atomic operations on s390 work [Matthias]
4292 * Fix C++ guards in gstdio.h [Tor Lillqvist]
4293
4294 Overview of Changes from GLib 2.7.5 to GLib 2.7.6
4295 =================================================
4296 * Add native implementations of atomic operations 
4297   on s390 [Matthias]
4298 * Make atomic reference counting of closures
4299   work on s390 [Matthias]
4300 * Avoid an infinite loop in g_convert_with_iconv().
4301   [Sebastian Bacher]
4302 * Documentation improvements [Ross Burton]
4303
4304 Overview of Changes from GLib 2.7.4 to GLib 2.7.5
4305 =================================================
4306 * Thread-related changes
4307  - Fix build issues on HP-UX [Paul Cornett]
4308  - Threadsafe access to flags stored in datasets [Tim Janik]
4309  - Fix several issues with atomic refcounting for 
4310    closures, objects and paramspecs [Tim]
4311  - Improve tests for atomic refcounting changes [Tim]
4312 * Fix handling of stateful encodings in g_convert_* [Matthias]
4313 * Fix translation of GOption help output [Dan Winship]
4314 * Catch format errors in translations. This may cause 
4315   "make check" to fail when using older versions
4316   of gettext [Matthias]
4317 * Win32 bug fixes [Tor Lillqvist]
4318 * Documentation improvements [Ross Burton, Jochen Baier, 
4319   Matthias, Tim]
4320 * New and updated translations (de,fi,gu,pl,pt,tr,zh_TW)
4321
4322 Overview of Changes from GLib 2.7.3 to GLib 2.7.4
4323 =================================================
4324 * Fix g_atomic_pointer_compare_and_exchange 
4325   on Sparc64 [Gert Doering]
4326 * Fix a hang in g_thread_pool_free. [Hong Jen Yee]
4327 * Win32 bug fixes [Tor Lillquist]
4328 * Other bug fixes [Benoit Dejean, Manish Singh]
4329 * Documentation improvements [Bryan Silverthorn,
4330   Callum McKenzie] 
4331 * New and updated translations (de,lt,sq,zh_CN)
4332
4333 Overview of Changes from GLib 2.7.2 to GLib 2.7.3
4334 =================================================
4335 * GOption
4336  - Allow callbacks with optional arguments [Pawel Sliwowski]
4337  - Allow to turn off the automatic long option name
4338    disambiguation  [Adam McLaurin]
4339  - Only allow printable ASCII as short option names [Matthias]
4340 * Win32
4341  - Build fixes [Tor Lillqvist]
4342  - Rewrite iochannel socket implementation [Tor]
4343 * GObject
4344  - Threadsafety improvements; in particular, refcounting
4345    of objects is done atomically now. [Wim Taymans, Tim Janik]
4346 * Bug fixes [Morten Welinder, Matthias, Wim Taymans]
4347 * Documentation improvements [Richard Laager, Matthias]
4348 * New and improved translations (bf,cs,hu,nb,nl,no)
4349
4350 Overview of Changes from GLib 2.7.1 to GLib 2.7.2
4351 =================================================
4352 * Win32 build fixes [Hans Breuer]
4353 * Bug fixes [Mikael Magnusson]
4354 * Documentation improvements [Matthias Clasen]
4355 * New and updated translations (en_CA,es,et,ja,sr,sr@Latn,zh_TW)
4356
4357 Overview of Changes from GLib 2.7.0 to GLib 2.7.1
4358 =================================================
4359 * GOption 
4360  - Allow callback arguments without parameters [Dan Winship]
4361 * GMappedFile: an mmap wrapper [David Schleef, Behdad Esfahbod]
4362 * Misc new functions:
4363  - g_get_host_name [Tor Lillqvist]
4364  - g_mkdir_with_parents [Tor]
4365  - g_build_pathv, g_build_filenamev [Todd A. Fisher, 
4366    Matthias Clasen]
4367 * Bug fixes [Roger Leigh, Masatake YAMATO, Kjartan Maraas,
4368   Manish Singh, Tor, Murray Cumming, Kian Duffy, Morten Welinder]
4369 * Documentation improvements [Hong Gang XU, Dan Winship, Matthias]
4370 * New and updated translations (bg,cs,da,en_CA,es,et,nb,nl,no,
4371   sk,th,zh_TW)
4372
4373 Overview of Changes from GLib 2.6.x to GLib 2.7.0
4374 =================================================
4375 * GKeyFile
4376  - Add unit tests [Matthias Clasen, Suren A. Chilingaryan]
4377  - Accept \r\n as line end [Bastian Nocera]
4378  - Don't interpret leading zeros as octal numbers. [Matthias]
4379  - Make key and group removal work [David Hoover, Matthias Hasselmann]
4380 * GOption
4381  - Improve formatting of --help output [Matthias, Noah Levitt]
4382  - Accept -? [Matthias]
4383  - Warn about duplicate main groups [Jeff Franks]
4384  - Treat '-' as non-option argument [Tim Musson, Thomas Leonard]
4385  - Report missing arguments as errors [Björn Lindqvist]
4386  - Add a boxed type for GDate [Tim-Philipp Müller]
4387 * GTree
4388  - g_tree_remove() and g_tree_steal() return status information [Matthew F. Barnes]
4389 * Stdio wrappers
4390  - Work regardless of large file support [Manish Singh]
4391  - Add g_access(), g_chmod(), g_creat(), g_chdir [Tor Lillqvist]
4392 * GObject
4393  - Implement "toggle references" to help language bindings [Owen Taylor]
4394  - Allow to mark names, nicks and blurbs of pspecs as static [Ben Maurer, Matthias]
4395  - Make pspec lookup a bit faster [Morten Welinder]
4396 * Add g_listenv() to list all set environment variables [Hans Petter Jansson]
4397 * Add g_file_set_contents() to atomically write a file.  [Søren Sandmann,
4398   Sven Neumann, Manish, Alexis S. L. Carvalho]
4399 * Add g_try_malloc(), g_try_new(), g_try_new0() and g_try_renew() [Stefan Kost]
4400 * Add g_utf8_collate_key_for_filename() to sort filenames taking
4401   extensions and numeric suffixes into account.  [Ole Laursen, Alex Larsson]
4402 * Add G_GNUC_NULL_TERMINATED to mark varargs function with 
4403   NULL-terminated argument lists. [Marc Meissner]
4404 * Win32 changes
4405  - Improved debugability [Ulf Lamping, Hans Breuer]
4406  - Make filename handling more robust [Tor, Billy Skaggs]
4407  - Improve g_get_system_data_dirs() [Tor]
4408  - Use more precise timers [Tor]
4409  - Build fixes [Kazuki Iwamoto, Hans, Tor, Robert Ögren]
4410 * Other bug fixes [Roger Leigh, Owen, Matthias, Morten, Kjartan Maraas, 
4411   Pawel Sakowski, Tor, Simon Budig, Ed Avis, Manish, Nicolas Laurent, 
4412   Bastien, Fabrício Barros Cabral, Michael Banck, Daniel Atallah, 
4413   J. Ali Harlow, Tim Janik, Hazael Maldonado Torres, Sven, Jon-Kare Hellan,
4414   Dave Benson, Tommi Komulainen, Benjamin Otte, Brian Cameron, Changwoo Ryu, 
4415   Christian Biere, Noah, Benoît Carpentier]
4416 * Documentation improvements [Vincent Untz, Matthias, Tim-Philipp Müller,
4417   Morten, Matthew, Federico Mena Quintero, Sebastian Bacher, Oliver Sessink, 
4418   Stefan, Jared Lash, Tor, Owen, Daniel Vaillard, Mathieu Lacage]
4419 * New and updated translations (ca,cs,da,el,en_CA,en_GB,es,et,eu,fa,fr,gl,
4420   hu,id,it,lt,mn,ne,nl,pl,pt,pt_BR,ro,rw,sk,sq,sr,sr@Latn,tl,uk,xh,zh_CN)
4421
4422 Overview of Changes from GLib 2.6.0 to GLib 2.6.1
4423 =================================================
4424 * GOption
4425  - Make gtk_init(NULL, NULL) work again [Marcin Krzyzanowski]
4426  - Improve handling of -- [Matthias Clasen]
4427  - Don't show G_OPTION_REMAINING in --help output [Matthew F. Barnes]
4428 * g_find_program_in_path() doesn't return directories [Tommi Komulainen]
4429 * Add gmodule-export-2.0.pc [Matthias]
4430 * Win32 changes
4431  - Improve hangling of UNC paths [Tor Lillqvist]
4432  - g_getenv(), g_setenv(), g_unsetenv(), g_find_program_in_path()
4433    take and return UTF-8 now [Tor] 
4434  - Make g_file_test() work more reliably, and use PATHEXT
4435    when check for executables [Tor]
4436  - Build and cross-compilation fixes [J. Ali Harlow]
4437 * Other bug fixes [Jens Hatlak, Morten Welinder, 
4438   Tor, Kalpesh Shah, Adrian Bunk]
4439 * Documentation improvements [Marcin Krzyzanowski, Tor, Crispin
4440   Flowerday, Mariano Suárez-Alvarez, Christian Biere, Danny Milo,
4441   Vincent Untz, Bastien Nocera]
4442 * New and updated translations (cy,de,nl,ru,sq,sv)
4443
4444 Overview of Changes from GLib 2.4.x to GLib 2.6.0
4445 =================================================
4446
4447 * Major new APIs
4448   - GOption, a commandline option parser
4449   - GKeyFile, a parser/editor for the .ini like files 
4450   - Functions to support the XDG basedir specification
4451   - Wrappers for common POSIX pathname functions to handle filename
4452     encodings consistently. On Windows, these use UTF-8.
4453
4454 * Miscellaneous new functions
4455   - g_filename_display_name() converts filenames in displayable UTF-8 strings
4456   - g_uri_list_extract_uris() splits uri lists
4457   - g_date_get_iso8601_week_of_year() gets ISO 8601 week numbers
4458   - g_log_set_default_handler() installs an alternate default log handler
4459   - g_get_language_names() obtains a list of applicable locale names
4460   - g_strv_length() calculates the length of NULL-terminated string arrays
4461   - g_win32_get_windows_version() determines the Windows version 
4462   - G_GNUC_INTERNAL marks functions as non-exported
4463   - glib_check_version() checks the GLib version at runtime
4464   - g_debug() completes the family of logging functions
4465
4466 * Performance improvements
4467   - Optimize g_utf8_validate()
4468   - Optimize g_markup_parse_context_parse()
4469   - Reduce signal connection complexity from O(n) to O(1) 
4470   - Get rid of many PLT entries for internally used exported symbols
4471   - Reduce code size by removing literal strings from g_return_if_fail()
4472
4473 * Other changes
4474   - On Windows, GLib functions that take file name arguments now require
4475     those to be in UTF-8. Functions that return file names return UTF-8.
4476   - Use higher precision for mathematical constants
4477   - Don't convert to/from UTF-8 in g_filename_to_uri/g_filename_from_uri
4478   - Support ll as printf format modifier for long long on all platforms
4479   - Clean up the ABI and enforce the list of exported symbols
4480   - Add a .pc file for using gmodule in libraries
4481   - Require ngettext
4482
4483 Overview of Changes from GLib 2.5.7 to GLib 2.6.0
4484 =================================================
4485 * GOption: Don't list help options if group-specific
4486   options have been requested [Glynn Foster]
4487 * Make g_get_language_names() track locale changes [Christian Persch]
4488 * Win32 bug fixes [Tor Lillqvist]
4489 * Bug fixes [Philippe Blain, Owen Taylor, Sebastian Wilhelmi]
4490 * New and updated translations (da,es,ja,lt,zh_CN)
4491 Bugs fixed: 159530,100697,160271,160645,157255
4492
4493 Overview of Changes from GLib 2.5.6 to GLib 2.5.7
4494 =================================================
4495 * Optimize g_utf8_validate() [Owen Taylor, Matthias Clasen]
4496 * Optimize g_markup_parse_context_parse() [Havoc Pennington, 
4497   Morten Welinder]
4498 * Reduce signal connection complexity from O(n) to O(1) 
4499   [Sven Neumann]
4500 * Add a .pc file for using gmodule in libraries [Owen]
4501 * Add G_GNUC_MALLOC to mark functions returning newly 
4502   allocated memory  [Matthias]
4503 * Win32 bug fixes [Hans Breuer, Tor Lillqvist, Robert Ögren,
4504   Bruce Hochstetler]
4505 * Bug fixes [Kazuki IWAMOTO, Matthias, Manish Singh, Morten,
4506   Frederic Crozat, Tor]
4507 * Documentation improvements [Matthias, Tor, Owen]
4508 * New and updated translations (cs,da,de,en_CA,en_GB,es,nb,nl,sq,zh_CN)
4509
4510 Overview of Changes from GLib 2.5.5 to GLib 2.5.6
4511 =================================================
4512 * GOption
4513   - Add G_OPTION_FLAG_REVERSE to allow options 
4514     which unset a  boolean variable [Tor Lillqvist]
4515 * GChildWatch
4516   - Use sigaction instead of signal [Jonas Jonnson, 
4517   Archana Shah]
4518   - Make the very first SIGCHLD work [Gustavo Carneiro]
4519 * Bug fixes [Morten Welinder, Tor, David MacLachlan,
4520   Manish Singh, J. Ali Harlow]
4521 * Documentation improvements [Matthias Clasen, Tor]
4522 * Updated translations (da,ja,tr,zh_CN)
4523
4524 Overview of Changes from GLib 2.5.4 to GLib 2.5.5
4525 =================================================
4526 * GKeyFile
4527   - Cleanups, add more error checking [Ray Strode]
4528   - Fall back to the untranslated string when getting 
4529     locale strings [Mark McLoughlin]
4530 * GOption
4531   - Document GOption [Matthias Clasen]
4532   - Better support for rest arguments [Owen Taylor, Matthias]
4533   - Handle conflicts between groups [Matthias]
4534 * Add g_lstat() to the stdio wrappers [Tor Lillqvist]
4535 * Add g_filename_display_name() to convert filenames
4536   in displayable UTF-8 strings  [Alex Larsson, Matthias]
4537 * Win32 bug fixes [Kazuki IWAMOTO, Hans Breuer, Tor]
4538 * Bug fixes [Christophe Fergeau, Morten Welinder, 
4539   Owen, Kjartan Maraas, Mark]
4540 * Documentation improvements [Matthias, Tor]
4541
4542 Overview of Changes from GLib 2.5.3 to GLib 2.5.4
4543 =================================================
4544 Add GKeyFile, a parser/editor for the .ini like files used in various
4545    freedesktop.org specifications. [Ray Strode]
4546 Make the handling of filename encodings consistent across all
4547    GLib functions, introduce wrappers for common POSIX 
4548    functions which accept the same filename encoding. [Tor Lillqvist, 
4549    Owen Taylor]
4550 GOption
4551  - Rename g_context_option_error_quark() to a more language-binding
4552    friendly name [Murray Cumming]
4553  - Accept backslashes in filenames on Win32 [Tor Lillqvist]
4554 * Strip the internal aliasing prefix IA__ from function names in 
4555   assertions [Matthias Clasen]
4556 * Add a function to split uri lists. [Matthias]
4557 * Win32 bug fixes 
4558  - Don't open console windows [Tor]
4559 * Other bug fixes [Philippe Blain, Robert Ögren, Hidetaka Iwai, Matthias,
4560  Morten Welinder, Mats-Ola Persson, Tor, Nickolay V. Shmyrev, Kjartan Maraas,
4561   Anders Carlsson, Tim-Philipp Müller, Lucas Rocha, Andrea Campi, Manish
4562   Singh, Thomas Fitzsimmons, Kazuki IWAMOTO]
4563 * Documentation improvements [Matthias, Linus Walleij, Nickolay, Philippe, 
4564  Adam Hooper, Gustavo Carneiro]
4565 * New and updated translations (cs,en_CA,en_GB,ja,nb,nl,or,sr,sr@Latn,sq)
4566
4567 Overview of Changes from GLib 2.5.2 to GLib 2.5.3
4568 =================================================
4569 * GOption
4570  - set the program name from argv[0] [Masatake YAMATO] 
4571  - make contexts work without a main group [Anders Carlsson]
4572 * Performance 
4573  - Get rid of many PLT entries for internally used exported symbols,
4574    and clean up the ABI at the same time and make make check check the
4575    list of exported symbols.  [Matthias Clasen]
4576 * Add API to get ISO 8601 week numbers [Niklas Lundell]
4577 * Add API to install an alternate default log handler [Darin Adler]
4578 * Add API to obtain a list of applicable locale names [Hidetoshi Tajima]
4579 * Reduce code size bloat by removing literal strings from
4580  the g_return_if_fail() macros [Owen Taylor]
4581 * Add g_strv_length [Tim-Philipp Müller]
4582 * Win32 changes
4583  - Add API to determine the Windows version [Tor Lillqvist]
4584 * Other bug fixes [Stepan Kasal, Anders, Tor, Kazuki Iwamoto,
4585   Manish Singh]
4586 * Documentation improvements [Morten Welinder, Matthias]
4587 * New and updated translations (es,nn,ro)
4588
4589 Overview of Changes from GLib 2.5.1 to GLib 2.5.2
4590 =================================================
4591 * Add G_GNUC_INTERNAL macro [Arjan van de Ven]
4592 * Add GOption, a commandline option parser [Anders Carlsson]
4593 * Add glib_check_version [Michael Natterer]
4594 * Add XDG basedir API [Ray Strode]
4595 * Require ngettext [Danilo Segan]
4596 * Bug fixes [Manish Singh, Ray Strode, Vincent Noel, 
4597   Jon-Kare Hellan, Jody Goldberg]
4598 * Win32 bug fixes [Tor Lillqvist, Hans Breuer, Peter Zelezny]
4599 * Documentation improvements [Matthias Clasen, Vincent Untz, Christian Persch]
4600 * New and updated translations (bs,eu,fi,gu,ne,pa)
4601
4602 Overview of Changes from GLib 2.5.0 to GLib 2.5.1
4603 =================================================
4604
4605 * Bug fixes [Oliver Guntermann, Sven Neumann, James 
4606   Henstridge, Hiroyuki Ikezoe, Matthias Clasen, Robert 
4607   Ögren, Tommi Komulainen]
4608 * Documentation improvements [Soeren Sandmann, 
4609   Christophe Fergeau, Danek Duvall]
4610 * New and updated translations (eu,hi)
4611   
4612 Overview of Changes from GLib 2.4.1 to GLib 2.5.0
4613 =================================================
4614
4615 * New functions g_debug [Sven Herzberg]
4616 * Use higher precision for mathematical constants [Morten 
4617  Welinder]
4618 * Don't convert to/from UTF-8 in g_filename_{to,from}_uri 
4619  [Federico Mena Quintero]
4620 * Win32
4621  - Handle empty digit string in printf() functions 
4622    correctly [Tor Lillqvist]
4623  - Support ll as format modifier for long long [Tor]
4624  - Be more careful about HOME [Tor, Ivan Wong]
4625  - Bug fixes [John Ehresman]
4626 * Miscellaneous bug and portability fixes [Danilo Segan, 
4627  Owen Taylor, Nikolai Weibull, Benoît Carpentier, Morten 
4628  Welinder, Manish Singh, Sven Neumann, Julio M. Merino Vidal,
4629  Kaz Sasayama, Murray Cumming, Federico, Mariano Suarez-Alvarez]
4630 * Documentation updates [Matthias Clasen, Crispin Flowerday,
4631  Tommi Komulainen, Federico Mena Quintero, Ed Griffiths]
4632 * New and updated translations (ja,ne,no,wa)
4633  
4634 Overview of Changes from GLib 2.4.0 to GLib 2.4.1
4635 =================================================
4636
4637 * Win32 bug fixes [Tor Lillqvist, Roger Leigh, John Ehresman]
4638 * Miscellaneous bug and portability fixes [Owen Taylor,
4639   Matthias Clasen, Jonas Jonsson, Christian Krause,
4640   Nickolay V. Shmyrev, Christophe Saout, Philippe Blain,
4641   Piotr Klaban]
4642 * Documentation updates [Matthias]
4643 * New and updated translations (ca,cs,cy,el,en_CA,en_GB,es,eu,fi,
4644   fr,gu,he,id,nl,pt,pl,ru,sr,sr@ije,sr@Latn,sv,uk)
4645
4646 Overview of Changes from GLib 2.3.6 to GLib 2.4.0
4647 =================================================
4648
4649 * Handle invalid-UTF-8 in g_log() properly [Matthias Clasen]
4650 * Win32 bug fixes [Tor Lillqvist, Bruce Hochstetler]
4651 * Miscellaneous bug and portability fixes [Olivier Biot, David L. Cooper II, 
4652   Kjartan Maraas, Frédéric L. W. Meunier, Christof Petig, Manish Singh, 
4653   Sebastian Wilhelmi]
4654 * Documentation updates [Owen]
4655 * Updated translations (hr,ro)
4656
4657 Overview of Changes from GLib 2.3.5 to GLib 2.3.6
4658 =================================================
4659
4660 * GAtomic bug fixes [Sebastian Wilhelmi, Mark McLoughlin]
4661 * GMain threading fixes and improvements [Sebastian]
4662 * Win32 [Tor Lillqvist]
4663  - restore some symbols extraneously exported from gobject to maintain ABI compatibility
4664  - Misc build improvements and fixes [Tor, Cedric Gustin, Hans Breuer]
4665 * Documentation updates [Sebastian, Takeshi AIHANA, Matthias, Sven Herzberg]
4666 * New and updated translations (be,es,fi,ga,pa,sr@ije,zh_CN)
4667
4668 Overview of Changes from GLib 2.3.3 to GLib 2.3.5
4669 =================================================
4670
4671 * Make glib-mkenums parse initializers with macros. [Matthias Clasen, muppet]
4672 * Respect locale era in g_date_set_parse(). [Theppitak Karoonboonyanan] 
4673 * Add atomic operations and use it for the async queue and
4674   gonce implementation. [Sebastian Wilhelmi]
4675 * Documentation improvements [Sebastian, Matthias, Sven Herzberg]
4676 * Add g_main_depth() for finding the recursion depth of the main
4677   loop [Owen Taylor, Tim Janik, Stefan Westerfeld]
4678 * Add g_spawn_close_pid(), needed on win32 [J. Ali]
4679 * Win32 fixes. [Hans Breuer, J. Ali Harlow]
4680 * Misc bugfixes [Sebastian, Matthias, Balazs Scheidler, Owen]
4681 * Updated translations (cy,et,ga,sq)
4682
4683 Overview of Changes from GLib 2.3.2 to GLib 2.3.3
4684 =================================================
4685
4686 * Add a native AIX gmodule implementation. [Laurent Vivier]
4687 * Add g_node_copy_deep().  [James M. Cape, Matthias Clasen]
4688 * Extend GQueue API to match the GList API. [Soeren Sandmann]
4689 * Add g_hash_table_find().  [Tim Janik]
4690 * Add a G_MODULE_BIND_LOCAL flag. [David Schleef]
4691 * Inline g_string_append_c() when possible. [Owen Taylor, Tim]
4692 * Wrap waitpid() as a GSource. [Jonathan R. Blandford]
4693 * Add g_completion_complete_utf8(). [Theppitak Karoonboonyanan, 
4694   Matthias]
4695 * Add g_strsplit_set(). [Soeren]
4696 * Documentation improvements. [Vincent Untz, Sebastian Wilhelmi, 
4697   Soeren, Matthias]
4698 * Win32 build fixes. [Tor Lillqvist]
4699 * Misc bugfixes [Manish Singh, Noah Levitt, Simon Josefsson, 
4700   Morten Welinder, Damien Carbery, Julio M. Merino Vidal, Sebastian, 
4701   Matthias]
4702 * Updated translations (nn,cs,it,ko,sq,ms,az,hr,uk,sr,sr@Latn,sq,ta)
4703
4704 Overview of Changes from GLib 2.3.1 to GLib 2.3.2
4705 =================================================
4706
4707 * Add G_MAXSIZE. [Manish Singh]
4708 * Add g_rand_new_with_seed_array(), g_rand_set_seed_array(),
4709   implementing the init-by-array functionality of the 
4710   original mersenne twister. Add g_rand_copy(). Improve seeding. 
4711   [George Lebl]
4712 * Add a lowercase_name option to glib-mkenums. [Murray Cumming]
4713 * Add g_ptr_array_foreach(). [Matthias Clasen]
4714 * Add g_timer_continue(). [Tim-Philipp Müller]
4715 * Fix a threadsafety issue in mem chunks. [Matthias, Balazs Scheidler]
4716 * Fix g_filename_{to,from}_utf8() on Win32 and improve 
4717   g_file_test() there too [Hans Breuer] 
4718 * Add a boxed type for NULL-terminated string arrays.  [Matthias]
4719 * Add G_DEFINE_TYPE() plus variants to ease the constuction
4720   of GObject boilerplate code.  [Tim Janik]
4721 * Support & in password GECOS field [Matthias, Soeren Boll Overgaard]
4722 * Documentation improvements [Matthias, Manish]
4723 * Win32 build fixes [Hans]
4724 * Misc bug fixes [Damien Carbery, Matthias, Manish, Olivier Poncet, 
4725   Zack Rusin]
4726 * Updated translations (ar,de,fa,ga,mn,nn,no,sq)
4727
4728 Overview of Changes from GLib 2.3.0 to GLib-2.3.1
4729 =================================================
4730
4731 * Add glib/gi18n.h and glib/gi18n-lib.h for common
4732   gettext support, including a Q_() macro for translation
4733   with context [Matthias Clasen]
4734 * Add a more flexible G_FILENAME_ENCODING variable
4735   as a replacement for G_BROKEN_FILENAMES [Matthias]
4736 * Fix the return value g_main_context_iterate() for
4737   newly ready sources [Padraig O'Briain]
4738 * Handle Hangul composition for normalization [Noah Levitt]
4739 * Add G_{MIN,MAX,MAXU}INT{8,16,32}. [Mark Jones, Matthias]
4740 * Add G_GSIZE_FORMAT/G_SSIZE_FORMAT [Manish Singh]
4741 * Add G_STRFUNC as a portable wrapper for __func__ [Tim Janik]
4742 * Documentation improvements [Matthias]
4743 * GObject [Tim Janik]
4744  - Support '-' in g_signal_connect()/disconnect() names
4745    like 'swapped-signal'.
4746  - Add g_type_class_peek_static() and use to optimize
4747    g_object_new() for static types [Tim]
4748  - Allow setting construct-only properties from within
4749    init() implementations
4750  - Enforce readability/writeability in g_object_set/get()
4751 * Fix bug with g_ascii_strtod and multi-byte separator.
4752   [Behdad Esfahbod, Roozbeh Pournader]  
4753 * Misc bug fixes [Matthias, John Ehresman, Andrew Lanoix,
4754   Tor Lillqvist, Mark McLoughlin, Tim-Philipp Müller, Manish, 
4755   Morten Welinder]
4756 * Updated translations (ca,cs,da,es,fr,ja,nn,no,pt,ru)
4757
4758 Overview of Changes from GLib 2.2.x to GLib-2.3.0
4759 =================================================
4760
4761 * Replace Trio printf by gnulib vasnprintf [Matthias Clasen]
4762 * Update Unicode data to Unicode 4.0 [Noah Levitt]
4763 * Support XML-safe formatted output with 
4764   g_markup_[v]printf_escaped [Owen Taylor]
4765 * Add g_file_read_link to read symbolic links [Matthias]
4766 * Add g_unichar_get_mirror_char to obtain the 
4767   mirrored variant of a character [Noah]
4768 * Support for one-time initialization functions. 
4769   [Sebastian Wilhelmi]
4770 * Miscellaneous API additions: g_vasprintf
4771   g_string_chunk_insert_len, g_setenv, g_unsetenv [Matthias]
4772 * Docs improvements [Matthias]
4773 * Add support instance-private data on classed types
4774   [Mark McLoughlin, Tim Janik, Owen]
4775 * Optimize signal emissions [Soeren Sandmann, Tim]
4776 * Support a "default vtable" per interface [Tim]
4777 * Add support for properties on interfaces [Owen, Tim]
4778 * Miscellaneous API additions: g_value_take_string(),
4779   g_value_take_param(), g_value_take_object(), 
4780   g_value_take_boxed(). [Matthias]
4781 * Win32 build fixes [Tor Lillqvist]
4782
4783 Overview of Changes from GLib 2.1.5 to GLib-2.2.0
4784 =================================================
4785
4786 * Fix a problem with g_thread_init() on 64-bit problems
4787   [Alceste Scalas, Sebastian Wilhelmi]
4788 * Add assembly implementations of byteswap macros
4789   for ia64 and x86_64. [Manish Singh]
4790 * IOChannel fixes for Win32 [Tor Lillqvist, Thorsten Maerz]
4791 * Updated translations (bg,ca,es,da,fi,lv,ru,sk)
4792
4793 Overview of Changes from GLib 2.1.4 to GLib-2.1.5
4794 =================================================
4795
4796 * Win32 bug fixes [Tor Lillqvist]
4797 * Various post-rewrite fixes for glib-gettext.m4 [Owen Taylor,
4798   Jody Goldberg, Kjartan Maraas, Johannes Stezenbach]
4799 * Ensure we have a GUINT64_FORMAT by pulling in Trio
4800   if necessary [Manish Singh]
4801 * Further Trio build fixes [Matthias Clasen, Owen]
4802 * Hack around gcc, libtool issues with -pthread [Owen]
4803 * Docs improvements [Matthias]
4804 * Bug and portability fixes 
4805 * Updated and new translations (bg,de,fi,fr,sq,fr)
4806
4807 Other contributors: Kai Poitschke, Morten Welinder
4808
4809 Overview of Changes from GLib 2.1.3 to GLib-2.1.4
4810 =================================================
4811
4812 * autoconf changes to make it possible to cross compile
4813   GLib. [Owen Taylor, Dan Kegel, Amy Lin, Dimi Shahbaz, 
4814   Johannes Stezenbach]
4815 * Use libintl when it has bind_textdomain_codeset() and
4816   GLib doesn't. [Owen]
4817 * Improve generation of pseudo-random integers [Morten Welinder, 
4818   Sebastian Wilhelmi]
4819 * Avoid literal UTF-8 in favor of octal escapes [Owen, Tomas Ogren]
4820 * Cleanup include order [Sven Neumann]
4821 * autoconf cleanups and bug fixes [Daniel, Matthias Clasen, Owen]
4822 * Doc fixes and additions [Matthias]
4823
4824 Other contributors: James M. Cape, Frederic Crozat, Martin Gansser,
4825   Phuc LeHong, Manish Singh, Joshua Weage, Morten Welinder
4826
4827 Overview of Changes from GLib 2.0.x to GLib-2.1.x
4828 =================================================
4829
4830 * Add copy of the Trio library to build and use for printf() when 
4831   system printf isn't good enough. Add g_printf()/etc. [Matthias Clasen]
4832 * Add g_str_has_suffix()/g_str_has_prefix() [Alex Larsson]
4833 * Add g_markup_parse_context_get_element() [Matthias]
4834 * Add g_utf8_strreverse [Matthias]
4835 * Add g_ascii_strtoull() [Tim Janik]
4836 * Support scanning of 64-bit values with GScanner [Tim]
4837 * Add g_set/get_application_name() [Havoc Pennington]
4838 * Add G_LIKELY()/G_UNLIKELY() macros for hinting branch probabilities. 
4839   Use for g_return_if_fail(). [Matthias Clasen]
4840 * Add G_GNUC_DEPRECATED macro [Tom Tromey]
4841 * Improve the seeding algorithm of GRandom to avoid problems
4842   with certain pathological seeds. Support G_RANDOM_VERSION=2.0
4843   environment variable. [Sebastian Wilhelmi]
4844 * Improve thread configure checks, use -pthread where applicable
4845   [Sebastian]
4846 * Improve handlng of thread priorities [Sebastian]
4847 * Fix up parameter names that might shadow functions from
4848   system headers [Soeren Sandmann]
4849 * Clean up usage of deprecated functions [Manish Singh]
4850 * Docs fixes and improvements. In particular, include "Since" information.
4851   [Matthias, Soeren, Martin Schulze, Daryll Strauss, Bill Janssen, 
4852   Owen Taylor, Morten Welinder]. 
4853
4854 Overview of Changes in GLib 2.0.7
4855 =================================
4856
4857 * Fix C++ warnings in gtype.h [Dom Lachowicz]
4858 * Fix g_type_fundamental_next() [Tim Janik]
4859 * Fix various missing includes of config.h [Morten Welinder]
4860 * Handle main loop initialization before g_thread_init [Sebastian Wilhelmi]
4861 * Various 64-bit fixes [Manish Singh]
4862 * Fix GPoll on Win32 [Tor Lillqvist, Herman Bloggs]
4863 * Fix bug with buffering on UTF-8 IOChannels [Daniel Elstner]
4864 * Misc bug and build fixes [Soren Andersen, Gustavo Carneiro, Tor,
4865      Tim, Havoc Pennington,  Matthias Clasen, Sebastian Rittau,
4866      Masahiro Sakai, Arvind Samptur, HideToshi Tajima, Owen Taylor]
4867 * Updated and new translations (be,cs,de,*fa,it,lv,pt_BR,tr)
4868
4869 Overview of Changes in GLib 2.0.6
4870 =================================
4871
4872 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
4873 * Clean up debug spew from GObject [Anders Carlsson]
4874 * Compiler warning fixes [David L. Cooper II]
4875 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
4876 * Fixes for --disable-debug [Sebastian Wilhelmi]
4877 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
4878   Rajkumar Sivasamy, Laurent Vivier]
4879 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
4880   Sebastian Rittau, Linus Welleij]
4881 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
4882 * Updated translations (bg,ko,vi)
4883
4884 Overview of Changes in GLib 2.0.5
4885 =================================
4886
4887 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
4888 * Clean up debug spew from GObject [Anders Carlsson]
4889 * Compiler warning fixes [David L. Cooper II]
4890 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
4891 * Fixes for --disable-debug [Sebastian Wilhelmi]
4892 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
4893   Rajkumar Sivasamy, Laurent Vivier]
4894 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
4895   Sebastian Rittau, Linus Welleij]
4896 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
4897 * Updated translations (bg,ko,vi)
4898
4899 Overview of Changes in GLib 2.0.4
4900 =================================
4901
4902 * Fix some 64-bit problems. (George Lebl, David L. Cooper II)
4903 * Add note about Tru64 iconv to INSTALL. (Manuel Op de Coul)
4904 * Fix problem with timouts > MAXINT. (Tim Janik, Owen Taylor)
4905 * Updated translations (ca,es,fr,ja,gl,ms,nl,pl,pt,ru)
4906
4907 Overview of Changes in GLib 2.0.3
4908 =================================
4909
4910 * Handle sorting 0-length arrays (Ron Arts)
4911 * Threading fixes (Sebastian Wilhelmi)
4912 * Portability fixes (Miroslaw Dobrzanski-Neumann, Jacob Berkman, Gareth Pierce, 
4913   Sebastian, Qingjiang Yuan)
4914 * Various fixes for glib-2.0.m4. (Jim Gettys, others.)
4915 * Locate right glib-genmarshal when cross-compiling. (Mitch Natterer)
4916 * Win32 fixes (Tor Lillqvist)
4917 * Try to fix g_get_charset() related segfaults. (Owen)
4918 * Fixes for gettext detection. (Dan Winship, HideToshi Tajima, Boyd Lynn Gerber,
4919   Andrew P. Lentvorski, Jr.)
4920 * Fix g_scanner_unexp_token() (Tim Janik, Sven Neumann)
4921 * g_markup fixes. (Matthias Clasen.)
4922 * Bug fixes and cleanups (Daniel Elstner, Matthias, Laszlo Peter, Morten Welinder,
4923   Wayne Schuller)
4924
4925 Overview of Changes in GLib 2.0.1
4926 =================================
4927
4928 * Portability fixes for Sun's Forte compiler [Erwann Chenede]
4929 * Performance improvements for GObject parameter lookup, 
4930   g_filename_to/from_utf8() [Alex Larsson]
4931 * Actually check interface prerequisites [Matthias Clasen,
4932   Miroslaw Dobrzanski-Neumann]
4933 * Fix problem with glib-mkenums taking huge amounts of stack. [Owen Taylor]
4934 * Fix g_signal_handlers_disconnect_by_func() for C++ [Damien Sandras]
4935 * Fixes for g_log() and threading.
4936   [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, Tim Janik]
4937 * Make g_print(), g_printerr(), g_warning(), etc, convert from
4938   UTF-8 to the encoding of the locale [Sebastian Wilhelmi, Tim]
4939 * Fixes for GIOChannel on windows. [Tor Lillqvist]
4940 * Fix gsize/gint mismatches in giochannel.c [Miroslaw Dobrzanski-Neumann]
4941 * Fix file descriptor leak in g_file_get_contents() [Matthias]
4942 * Workaround iconv() problems on older Solaris [Lauri Alanko]
4943 * Fix warnings with gcc-3.1 about asm const [Cody Russel]
4944 * Minor bug fixes.
4945
4946 Other contributors: Hans Breuer, LEE Sau Dan, Sven Neumann, Salmaso Raffaele,
4947   Akira Tagoh, Morten Welinder
4948
4949
4950 Overview of Changes in GLib 2.0.0
4951 =================================
4952
4953 * Thread portability fixes [Sebastian Wilhelmi]
4954 * Documentation updates [Owen Taylor]
4955 * Make g_strerror(), g_strsignal() properly return UTF-8,
4956   call bind_text_domain_codeset() so that error strings
4957   are in UTF-8 as well. [Owen, Tor Lillqvist]
4958
4959 Overview of Changes in GLib 2.0.0 rc1:
4960 ======================================
4961
4962 * Win32 fixes [Tor Lillqvist]
4963 * Portability fixes [Finlay Dobbie, Miroslaw Dobrzanski-Neumann]
4964 * Fix up g_date_strftime [Daniel Elstner]
4965 * Add some structure padding [Tim Janik]
4966 * Make g_get_homedir() prefer the users home directory to $HOME
4967
4968 Other contributors: Matthias Clasen, Paolo Maggi, Christian Rose
4969
4970 Overview of Changes in GLib 1.3.15:
4971 ===================================
4972
4973 * Speed up marshalers by using private access to GValue 
4974   [Anders Carlsson, Tim Janik]
4975 * Reduce GValue to 2 elements [Tim]
4976 * Add G_DEBUG environment variable, G_DEBUG=fatal_warnings [Matthias Clasen]
4977 * Fixes for AIX compilation [Miroslaw Dobrzanski-Neumann]
4978 * Add padding to various structures [Owen Taylor, Tim]
4979 * Win32 fixes [Tor Lillqvist]
4980
4981 Other contributors: James Henstridge, Ryan Lovett, Morten Welinder,
4982   Daniel Elstner
4983
4984 Overview of Changes in GLib 1.3.14:
4985 ===================================
4986
4987 * Register value transformations for gint64, guint64 [Andy Wingo]
4988 * Build with large-file support [Sven Neumann, Owen Taylor]
4989 * Fix handling of hostnames in URI's [Darin Adler]
4990 * Main loop bug fixes [Havoc Pennington, Owen]
4991 * Doc fixes and improvements [Manish Singh, Tim Janik]
4992 * Support ' as attribute delimiters in GMarkup [Matthias Clasen]
4993 * Win32 fixes [Hans Breuer, Tor Lillqvist]
4994 * Threading bug and build fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann]
4995 * Miscellaneous bug fixes
4996
4997 Other contributors: Matthias Clasen, James Henstridge, Mitch Natterer, 
4998   Morten Welinder.
4999
5000 Overview of Changes in GLib 1.3.13:
5001 ===================================
5002
5003 * Fix g_filename_to/from_uri for Win32 [Tor Lillqvist, Darin Adler]
5004 * Miscellaneous win32 fixes [Tor, Hans Breuer]
5005 * Fix thread options for gcc on AIX [Jerome Zago, Sebastian Wilhelmi]
5006 * Documentation improvements [Ron Steinke, Matthias, Sebastian]
5007 * Cache iconv converters as used by g_convert() [Jeffrey Stedfast]
5008 * Bug fixes [Sven Neumann, Owen Taylor, Matthias Clasen, Jeffrey,
5009   Laszlo Peter, Havoc Pennington, Tim Janik]
5010
5011 Overview of Changes in GLib 1.3.12:
5012 ===================================
5013
5014 * Implement closure chaining, fixing up API (Tim Janik)
5015 * Closure chaining test case (James Henstridge)
5016 * Make GType long not int where both are equal width (Tim)
5017 * Win32 fixes and improvements (Hans Breuer, Tor Lillqvist)
5018 * Fixes for NetBSD. (Dan Winship)
5019 * Use snprintf() for g_printf_string_upper_bound() where possible. (Matthias Clasen)
5020 * Save space for GBSearchArray (Tim Janik)
5021 * Documentation improvements. (Matthias, Sven Neumann, Havoc Pennington)
5022
5023 Other contributors: Darin Adler, Chris Blizzard, Anders Carlson, Daniel Elstner, Michael Meeks, 
5024   Mark McLoughlin, Dave Neary, Manish Singh, Owen Taylor, HideToshi Tajima, 
5025   Sebastian Wilhelmi.
5026
5027
5028 Overview of Changes in GLib 1.3.11:
5029 ===================================
5030
5031 * Win32 fixes [Hans Breuer, Tor Lillqvist]
5032 * Documentation improvements [Matthias Clasen]
5033 * Portable directory handling API [Hans]
5034 * Threading fixes [Sebastian Wilhelmi, Havoc Pennington]
5035 * Fix excess relocations in Unicode tables [Andrew Taylor]
5036 * Fix gpattern for UTF-8 [Matthias Clasen]
5037 * Support overriding class closures [Tim Janik]
5038 * Support for derivation from G_TYPE_POINTER [Owen Taylor]
5039 * Hide pointers to type information inside GType to reduce locking
5040   [Alex Larsson, Tim]
5041 * Adds check for direct inclusion of gobject/*.h [Owen]
5042 * GObject API cleanups [Tim]
5043
5044 Other contributors: Darin Adler, Jacob Berkman, Daniel Egger, Eric Lemings, 
5045   Michael Meeks, Mark McLoughlin, Arkadiusz Miskiewicz, Dan Winship
5046
5047
5048 Overview of Changes in GLib 1.3.10:
5049 ===================================
5050
5051 * Many Win32 fixes and improvements [Tor Lillqvist]
5052 * Documentation improvements [Matthias Clasen]
5053 * g_string_printfa() renamed to g_string_append_printf()
5054 * Use libcharset from libiconv to implement charset detection
5055   more portably. [Owen Taylor, Hidetoshi Tajima]
5056 * Add 64 bit type support to GObject [Joshua Pritikin, Mathieu Lacage, Owen]
5057 * Make support for 64 bit integers a requirement [Joshua]
5058 * GPattern improvements [Tim Janik, Matthias]
5059 * Locale independent g_ascii_strtod / g_ascii_dtostr [Alex Larsson]
5060 * Many bug fixes and minor tweaks.
5061
5062 Other Contributors: Darin Adler, Jakub Jelinek, James Antill, Andrew Taylor,
5063   Ben Gertzfield, Elliot Lee, Manish Singh, Abel Cheung, Laszlo Peter,
5064   Sven Neumann, George Lebl, Raja Harinath, Sebastian Wilhelmi,
5065   Jacob Berkman
5066
5067
5068 Overview of Changes in GLib 1.3.9:
5069 ==================================
5070
5071 * Fixes for comparison of threads [Sebastian Wilhelmi]
5072 * Use vasprintf() when possible for g_strdup_printf [Matthias Clasen]
5073 * Win32 fixes [Tor Lillqvist, Hans Breuer]
5074 * Add a len argument to g_ascii_strup/strdown
5075 * Bug, portability fixes, cleanups.
5076
5077 Other Contributors: Darin Adler, Katsuhiro Okuno, Joshua N. Pritikin
5078
5079
5080 Overview of Changes in GLib 1.3.8:
5081 ==================================
5082
5083 * Documentation updates [Owen]
5084 * Made GType interfaces overridable in derived types
5085 * Many win32 fixes [Tor Lillqvist]
5086 * Miscellaneous cleanups and fixes
5087
5088 Other contributors:
5089   Darin Adler, Matthias Clasen, Ron Steinke, Hans Breuer, Alex Larsson
5090
5091
5092 Overview of Changes in GLib 1.3.7:
5093 ==================================
5094
5095 * Integrate GClosure support into the main loop [Owen Taylor]
5096 * More GSignal convenience functions (macros) [Sven Neumann, Tim Janik]
5097 * Introduced weak references for GObject [James Henstridge, Sven, Tim] 
5098 * Minor hash table optimizations
5099 * Main loop and threading improvements [Sebastian Wilhelmi]
5100 * Added g_ascii_* functions to be used for locale insensitive UTF-8
5101   compliant code instead of old string functions  [Darin Adler, Alex Larsson]
5102 * Add functions for Unicode case-conversion, normalization, and 
5103   collation [Owen]* GString improvements [Owen]
5104 * Reworked the GIOChannel code [Hidetoshi Tajima, Ron Steinke]
5105 * Removed glib-config-2.0 in favour of pkgconfig [Sebastian]
5106 * Make code 64bit clean [Mark Murnane]
5107 * More G_CONST_RETURN fixes
5108 * Many improvements to the win32 code [Tor Lillqvist, Hans Breuer]
5109 * Miscellaneous bug and API fixes
5110
5111 Other contributors:
5112   Michael Natterer, Christopher James Lahey, Padraig O'Briain,
5113   Matthias Clasen, Josh Pritikin, Steve Baker, Cesar Rincon, Garry R. Osgood,
5114   Michael Meeks, Laszlo Peter,  Martin Baulig, Kjartan Maraas, Andrew Lanoix,
5115   Peter Williams
5116
5117
5118 Overview of Changes in GLib 1.3.6:
5119 ==================================
5120
5121 * Threads have a "return value" from g_thread_join
5122 * Removed ability to adjust thread stack size
5123 * Prefix warnings with progname/PID by default, change toggle for this to 
5124   be an env variable G_MESSAGES_PREFIXED not a compile-time option
5125 * GMarkup speedups
5126 * GDate const, convenience fixups
5127 * Include test cases that headers are compilable by C++ compiler
5128 * Add ability to spawn processes with argv[0] != executable path.
5129 * g_strstr_len, g_strrstr, g_strrstr_len
5130 * Add length argument to g_utf8_strchr and g_utf8_strrchr.
5131 * Misc bug fixes
5132
5133
5134 Overview of Changes in GLib 1.3.5:
5135 ==================================
5136
5137 * Added an installed glib-mkenums Perl program for parsing enumeration
5138   declarations from header files.
5139 * Mark some additional deprecated functions.
5140 * Bug and Portability fixes
5141
5142
5143 Overview of Changes in GLib 1.3.4:
5144 ==================================
5145
5146 * Efficiency improvements for GThreadPool
5147 * A few bug fixes
5148 * Build fixes
5149 * Documentation improvements
5150
5151
5152 Overview of Changes in GLib 1.3.3:
5153 ==================================
5154
5155 GLib:
5156
5157 * More user_data support in various functions.
5158 * Main loop API revamps to support per-thread main loops.
5159 * Unicode handling improvements.
5160 * Implemented debugging traps.
5161 * G_CONST_RETURN specification all over the place.
5162 * Various new small utility functions.
5163 * Random number generator precision improvements.
5164 * New configure option --disable-mem-pools.
5165 * Many Win32 improvements.
5166 * Added g_try_malloc() friends varinats.
5167 * Many documentation improvements.
5168 * Many threading improvements, support for dynamic allocation
5169   of static mutexes.
5170 * GHookLIst API cleanups.
5171 * Improved format support of GDate parser.
5172 * String function speed improvements with new g_stpcpy().
5173 * Hashtable API additions.
5174 * New GPatternSpec for shell-style pattern matching (from GtkPatternSpec).
5175 * Optimizations, cleanups, bug fixes.
5176
5177 GObject:
5178
5179 * Added many convenience functions.
5180 * GClosure and GParamSpec use float/sink ref-counting scheme now.
5181 * Reworked property change notification.
5182 * Binary searchable array cleanups, so it's widely usable now.
5183 * Added static content keeping for some GValue types.
5184 * Support for statically scoped signal parameters.
5185 * Extinguished property trailer args in set/get interface.
5186 * Added support for abstract types.
5187 * G_CONST_RETURN specification all over the place.
5188 * Split parameter exchange functionality into value transforms
5189   and parameter conversions.
5190 * Added signal emission hooks and signal accumulators.
5191 * Added interface prerequisites to support is_a (interface, object)
5192   relations.
5193 * Implemented GValueArray.
5194 * New types, boxed: G_TYPE_VALUE, G_TYPE_CLOSURE, G_TYPE_GSTRING
5195   GParamSpecs: G_TYPE_PARAM_PARAM, G_TYPE_PARAM_POINTER, G_TYPE_PARAM_CLOSURE,
5196   G_TYPE_VALUE_ARRAY, G_TYPE_PARAM_UNICHAR, G_TYPE_PARAM_VALUE_ARRAY.
5197 * Varrags value collection improvements.
5198 * Implemented debugging traps.
5199 * Made things thread-safe.
5200 * Many documentation improvements.
5201 * Many cleanups, optimizations and bug fixes.
5202
5203
5204 Overview of Changes in GLib 1.3.2:
5205 ==================================
5206
5207 GLib:
5208
5209 * Win32 build improvements  [Tor]
5210 * Improvements to error reporting  
5211   (g_critical(), g_return_if_reached()) [Darin]
5212 * Add g_strlcpy/g_strlcat  [David Wheeler]
5213 * New IO channel implementation for Win32  [Tor] 
5214 * Make g_array_free, g_string_free return pointer to memory requested
5215   not to be freed.  [Darin]
5216 * Added GError based error reporting for thread functions.  [Sebastian]
5217 * Moved reference docs into GLib distribution. [Owen]
5218 * Added g_convert() for doing convenient character set conversions based
5219   on iconv. (GLib now requires libiconv or a native iconv.) [Havoc/Owen]
5220 * Various Unicode handling additions (g_ucs4_to_utf8, g_utf8_validate(),
5221   g_{locale,filename}_{to,from}_utf8)  [Robert/Havoc/Owen]
5222 * Portability fixes for threading.  [Sebastian]
5223 * Added convenient functions for launching new processes (g_spawn_*),
5224   and shell quoting/unquoting functions.  [Havoc]
5225 * Split glib.h into many headers.  [Sebastian]
5226 * Added a simple callback-based parser for XML-like files (GMarkup).  [Havoc]
5227 * Fixed confusions between comparison functions that return <0, 0, >0
5228   and equaility functions that return FALSE,TRUE.  [Sebastian]
5229 * Added safe/portable temporary file manipulation functions.  [Tor]
5230 * autoconf improvements.  [Raja]
5231 * Many documentation improvements.
5232 * Bug fixes.
5233
5234 GObject:
5235
5236 * Added boxed and pointer types.  [Tim/Jonathan]
5237 * Added callback abstraction (GClosure)  [Tim]
5238 * Added signal system (GSignal)  [Tim]
5239 * Make GTypePlugin an interface  [Tim]
5240 * Added GTypeModule - a simple GTypePlugin instantiation  [Owen]
5241 * Bug fixes.
5242
5243
5244 What's new in GLib 1.3.1:
5245 =========================
5246
5247 * New GObject library added including object system based on
5248   the GTK+ object system. 
5249 * Functions for getting the properties of Unicode characters, 
5250   computing the canonical decomposition and ordering combining
5251   characters aand manipulating UTF-8 string manipulation based
5252   on libunicode.
5253 * GString now properly handles embedded nuls.
5254 * Multiple fixes from the 1.2.x branch.
5255 * Upgrade to libtool 1.3.3
5256 * Full thread support (thread creation and destruction).
5257 * BeOS port, BeOS dynamic modules.
5258 * Many improvements to the Windows ports.
5259 * Improvements to the OS/2 port, OS/2 module support.
5260 * Double ended queue implementation.
5261 * GLib macros for printf() formatting, e.g. G_GULONG_FORMAT = "lu"
5262 * New configure option --enable-msg-prefix to prefix messages, warnings
5263   et ceteri with the program name and the process id.
5264 * New thread-safe random number generator Mersenne Twister.
5265 * g_strcompress() added, g_strescape() had a slight API change, and
5266   more tightly defined semantics.
5267 * the g_string(x) macro has been removed, #x may be used instead.
5268                                 
5269 * bugs fixed: