Updated the documentation to explain that when the maximum threads is > 1
[platform/upstream/glib.git] / ChangeLog.pre-2-12
index f9d2f6e..abb5d28 100644 (file)
-2006-01-05  Matthias Clasen  <mclasen@redhat.com>
+2006-03-24  Martyn Russell  <martyn@imendio.com>
 
-       * NEWS: Updates
+       * glib/gthreadpool.c: Updated the documentation to explain that
+       when the maximum threads is > 1 the sort functionality is not 100%
+       accurate due to the ramdom nature of the scheduler choosing which
+       threads to execute. Fixes bug #334943.
 
-       * glib/gmain.c: Clarify the documentation of source ids
-       a bit.  (#325874, Dan Williams)
+       * tests/threadpool-test.c: Disabled the debugging by default and
+       fixed the sort test to set the maximum threads to 1 to guarantee
+       the thread entry function is called in order. 
 
-       * configure.in: Fix another strict aliasing problem.
-
-       * glib/gthreadpool.c: Avoid use of varargs macro.  (#325864,
-       Kazuki IWAMOTO)
-
-2006-01-04  Manish Singh  <yosh@gimp.org>
-
-       * glib/glib.symbols
-       * glib/gstdio.h: don't macroized g_access, g_chdir, and g_unlink
-       either, since they have the same issue as g_rmdir. (Related to
-       bug #325249)
-
-Wed Jan  4 13:33:25 2006  Tim Janik  <timj@gtk.org>
-
-       * glib/gslice.c (magazine_cache_pop_magazine): don't reverse chunk 
-       order when creating magazines, so we hand out chunks with ascending
-       adresses.
-
-2006-01-04  Abel Cheung  <maddog@linuxhall.org>
-
-       * configure.in: Added "ml" "zh_HK" to ALL_LINGUAS.
-
-2006-01-03  Martyn Russell  <martyn@imendio.com>
-
-       * docs/reference/glib/glib-sections.txt:
-       * glib/glib.symbols:
-       * glib/gthreadpool.[ch]:
-       - Added new API g_thread_pool_get_idle_time() and
-       g_thread_pool_set_idle_time(). (#324228).
-       
-       * tests/threadpool-test.c: 
-       - Updated test case to do thread pool sorting, thread pool with
-       no sorting and a thread pool with idle thread timeouts.
-       
-2006-01-03  Matthias Clasen  <mclasen@redhat.com>
-       
-       * glib/gmain.h: Add new functions here, too.
-
-       * glib/glib.symbols: Add new functions.
-
-2005-12-20  Michael Meeks  <michael.meeks@novell.com>
-
-       * glib/gmain.c (g_main_context_is_owner): new method
-       to determine if the current thread is the owner of the
-       context.
-
-2006-01-02  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/glib.symbols: 
-       * glib/gstdio.h: 
-       * glib/gstdio.c (g_rmdir): Don't provide g_rmdir() as a macro
-       expanding to rmdir, since rmdir is not declared in a portable
-       system header we can include in gstdio.h.  (#325249, Jani Monoses)
-
-2006-01-01  Tor Lillqvist  <tml@novell.com>
-
-       * glib/gspawn-win32.c (g_spawn_sync_utf8): Set the GIOChannels for
-       stdout and stderr to unbuffered. Otherwise the giochannel layer
-       will try to read from them regardless whether the
-       g_io_channel_win32_poll() call here has indicated
-       readability or not. (#325310)
-
-2005-12-29  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gutils.c (glib_check_version): Fix a copy-and-paste error
-       in the docs.  (#325273, Declan Naughton)
-
-2005-12-27  Manish Singh  <yosh@gimp.org>
-
-       * tests/run-collate-tests.sh: use LC_ALL instead of LC_COLLATE, to
-       make sure we really override things.
-
-2005-12-27  Matthias Clasen  <mclasen@redhat.com>
-       
-       Fix #316221, Michal Benes, Stanislav Brabec;
-
-       * configure.in: Fix a strict aliasing problem in 
-       g_static_mutex_get_mutex(). 
-       * glib/gthread.h: ...and in 
-       g_static_mutex_get_mutex_impl_shortcut().
-
-       * glib/gdatasetprivate.h: Add a cast to silence compiler
-       warnings.  (#321978, Andrew Paprocki)
-
-       Partial fix for bug #323937, Bogdan Nicula.
-
-       * configure.in: Check for malloc.h
-       * glib/gslice.c: Don't include malloc.h unconditionally.
-
-2005-12-27  Manish Singh  <yosh@gimp.org>
-
-       * tests/run-collate-tests.sh: export LC_COLLATE so it takes.
-       (#324950, Dan Yefimov)
-
-2005-12-26  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gslice.c: On Win32, include process.h  (#325015, Kazuki
-       Iwamoto)
-
-2005-12-25  Matthias Clasen  <mclasen@redhat.com>
-
-       * AUTHORS: Update my email
-
-       * tests/slice-test.c: Fix C99isms.  (#324950, Dan Yefimov)
-
-2005-12-21  Matthias Clasen  <mclasen@redhat.com>
-       
-       * README.in: Add some notes on when 'make check' may fail.
-
-2005-12-20  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/glib.symbols: 
-       * glib/gthreadpool.h: 
-       * glib/gthreadpool.c (g_thread_pool_set_sort_function): New function
-       to sort tasks pushed into a threadpool.  (#324479, Martyn Russell)
-
-       * tests/threadpool-test.c: Test this.
-
-Tue Dec 20 18:14:14 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gslice.[hc]: added mem_error() and mem_assert() to test and 
-       handle  errors without depending on gmessage.c which might not be
-       setup when the error occours.
-       removed G_SLICE_CONFIG_ALWAYS_FREE config option, fixed the code so
-       always freeing can be achieved by adjusting the working set time to
-       0 with G_SLICE_CONFIG_WORKING_SET_MSECS.
-       added G_SLICE_CONFIG_COLOR_INCREMENT to test different color increments
-       (mainly 0 and 1). reduced the minimum block size to 128 bytes, to
-       minimize wastage if small amounts of differently sized structrues are
-       allocated, this does come at a performance cost of roughly 5% though.
-       fixed up block alignment calculation, so it works for varying
-       block sizes. only use strerror() not g_strerror() since the latter
-       depends on working GQuark and GSlice.
-       mem_error(): implemented in terms of fprintf and vfprintf.
-
-       * tests/slice-color.c: new program to test cache colorization effects.
-
-       * tests/slice-test.c: trade G_SLICE_CONFIG_ALWAYS_FREE for 0 duration
-       G_SLICE_CONFIG_WORKING_SET_MSECS.
-
-2005-12-17  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/goption.c (parse_short_option): Set an error in all
-       failure cases.  (#324332, Tim-Philipp Müller) 
-
-2005-12-17  Sebastian Wilhelmi  <seppi@seppi.de>
-
-       * glib/gatomic.c: Fix memory barrier position in g_atomic_int_get
-       and g_atomic_pointer_get. Add g_atomic_int_set and
-       g_atomic_pointer_set implementations for the !DEFINE_WITH_MUTEXES &&
-       G_ATOMIC_OP_MEMORY_BARRIER_NEEDED case, as well as defining them
-       as functions (additionally to the macros in the header) for the 
-       !G_ATOMIC_OP_MEMORY_BARRIER_NEEDED case.
-
-2005-12-16  Matthias Clasen  <mclasen@redhat.com>
-
-       *  glib/gmem.c (g_allocator_new): Don't return a pointer to
-       a const struct, since apps expect to be able to modify it. 
-       (#324179, J. Ali Harlow)
-
-Tue Dec 13 10:13:32 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gatomic.h: added g_atomic_pointer_set() and g_atomic_int_set()
-       for systems where the initialization of atomic variables requires a
-       write memory barrier.
-
-2005-12-09  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Bump version
-
-       * === Released 2.9.1 ===
-
-2005-12-09  Alexander Larsson  <alexl@redhat.com>
-
-       * glib/glist.h: 
-       * glib/gslist.h:
-       Use G_GNUC_WARN_UNUSED_RESULT on list functions that return
-       the whole list.
-
-2005-12-08  Matthias Clasen  <mclasen@redhat.com>
-
-       * NEWS: Updates
-
-2005-12-07  Martyn Russell  <martyn@imendio.com>
-
-       * glib/gasyncqueue.c:
-       - Call g_queue_insert_sorted() instead of duplicating the code.
-       - Call g_queue_sort() instead of duplicating the code.
-       - Invert sort function results to make sure the same sort function
-       gives the same results across glist, gslist, gqueue and
-       gasyncqueue.
-
-       * tests/asyncqueue-test.c:
-       - Updated the sort function to reflect the example in the
-       documentation for gasyncqueue.c.
-
-2005-12-07  Martyn Russell  <martyn@imendio.com>
-
-       * docs/reference/glib/glib-sections.txt:
-       * docs/reference/glib/tmpl/linked_lists_double.sgml:
-       * docs/reference/glib/tmpl/linked_lists_single.sgml:
-       * glib/glist.[ch]: 
-       * glib/gslist.[ch]: 
-       - Added g_list_insert_sorted_with_data () and
-       g_slist_insert_sorted_with_data ().
-       - Removed the extra check in g_list_sort() and g_slist_sort() for
-       GCompareDataFunc vs. GCompareFunc.
-       
-2005-12-07  Tor Lillqvist  <tml@novell.com>
-
-       * glib-gettextize.in: Look up prefix at run-time on Win32,
-       assuming the standard directory structure with glib-gettextize in
-       $prefix/bin.
-
-2005-12-06  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gmem.h: Exempt GTK+ from the mem chunk deprecation, since
-       we need GTK+ 2.8 to compile against GLib 2.10.
-
-2005-12-05  Manish Singh  <yosh@gimp.org>
-
-       * tests/run-collate-test.sh: set LC_COLLATE, not LANG, to be sure
-       to override any user settings.
-
-2005-12-05  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Revert an accidential commit
-
-2005-12-05  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gutf8.c: Documentation updates.  (#323291, Morten Welinder)
-
-       * tests/Makefile.am (TESTS_ENVIRONMENT): 
-       * tests/gobject/Makefile.am (TESTS_ENVIRONMENT): Set
-       MALLOC_CHECK_ and MALLOC_PERTURB_
-
-       * tests/run-collate-tests.sh: Run the collation tests explicitly 
-       in en_US locale. (#320463)
-
-       * glib/gmem.h: Really deprecate GMemChunk.
-
-       * glib/gdate.c: 
-       * glib/gutils.c: 
-       * glib/gtree.c: 
-       * glib/gstring.c: 
-       * glib/giochannel.c: 
-       * glib/gstrfuncs.c: Add versioned deprecation docs. 
-
-2005-12-05  Martyn Russell  <martyn@imendio.com>
-
-       * docs/reference/glib/glib-sections.txt:
-       * glib/gasyncqueue.[ch]:
-       - Added support for sorting async queues by with _push_sorted(),
-       _push_sorted_unlocked(), _sort() and _sort_unlocked() (#323047).
-       
-       * tests/Makefile.am:
-       * tests/asyncqueue-test.c:
-       - Added test case for gasyncqueue.c
-
-Mon Dec  5 15:53:20 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gslice.c: implement chain walking for arbitrary ->next pointer
-       offsets in g_slice_free_chain_with_offset() based on a patch by behdad
-       in bug 323178. moved time consuming logic from g_slice_free() out of
-       the inner loop, so g_slice_free_chain_with_offset() provides a real
-       performance benefit over g_slice_free1() now.
-       
-       * glib/gslice.h: renamed g_slice_free_chain() to
-       g_slice_free_chain_with_offset(). implemented g_slice_free_chain() as
-       a type-safe macro as suggested in bug 323178.
-       simplified the macro implementation of g_slice_free() and implemented
-       it in a type safe manner for all compliers as suggested by Morten
-       Welinder <mortenw@gnome.org>.
-
-       * glib/gmain.c:
-       * glib/glist.c:
-       * glib/gslist.c:
-       * glib/glib.symbols: s/g_slice_free_chain/g_slice_free_chain_with_offset/
-
-2005-12-05  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gasyncqueue.c: Add some docs.
-
-       * tests/libmoduletestplugin_a.c: Fix compiler warnings.
-
-       * glib/gatomic.c: In the ia64 implementation, use
-       __sync builtin without _si or _di suffix.  (#321229,
-       Stanislav Brabec, patch by Andreas Schwab)
-
-2005-12-04  Behdad Esfahbod  <behdad@gnome.org>
-
-       * glib/gslice.h: Remove comma at the end of enum.
-
-2005-12-04  Matthias Clasen  <mclasen@redhat.com>
-
-       Handle multiple user names with the same UID better.
-       (#319535, Laszlo Peter)
-       
-       * glib/gutils.c (g_get_any_init_do): When determining user
-       data, first look up $LOGNAME. If the UID doesn't match
-       getuid(), fall back to the current behaviour of looking
-       up the user data based on getuid().
-
-2005-12-04  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gmacros.h (G_GNUC_WARN_UNUSED_RESULT): Add a macro
-       to make gcc warn if a function result is ignored.  (#145466,
-       Arjan van de Ven, Alex Larsson)
-
-       * glib/gmem.h: Add the new attribute to g_realloc and 
-       g_try_realloc.
-
-2005-12-03  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/glib.symbols: 
-       * glib/gcache.h: Deprecate g_cache_value_foreach. (#322956,
-       Nicolas Caniart)
-
-       * glib/gmappedfile.c: Make mapping of empty files
-       work.  (#321530)
-       
-       * glib/gfileutils.c: Don't fork a new process just to 
-       fix the permissions of the created temp file.  (#321318,
-       Alexis S. L. Carvalho)
-
-2005-12-02  Matthias Clasen  <mclasen@redhat.com>
-
-       * README.in: Add a note about Solaris threads.
-
-       * glib/gspawn.c:
-       * configure.in: Remove support for Solaris threads. 
-       (#136971, Sebastian Wilhelmi, patch by Andrew Paprocki)
-
-2005-12-02  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Define G_GUINT64_CONSTANT in analogy to
-       G_GINT64_CONSTANT.  (#322568, Andrew Paprocki)
-
-2005-12-02  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gslice.c: Win32 portability fixes and C99ism removal,
-       pointed out by Kazuki Iwamoto.  (#323052)
-       
-2005-12-02  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gatomic.c (g_atomic_int_add): Add a missing volatile for
-       the IA64 implementation.
-
-Fri Dec  2 16:18:09 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gslice.c: some naming and type size fixups.
-
-Fri Dec  2 13:08:58 2005  Tim Janik  <timj@gtk.org>
-
-       * glib/gslice.h (g_slice_free): reworked GCC-specific type-safe macro
-       variant into something less verbose, but digestible for gcc-3.4.
-
-Fri Dec  2 10:55:07 2005  Tim Janik  <timj@imendio.com>
-
-       * tests/slice-test.c: extended to perform the benchmarking on the old
-       memchunk code if 'O' is selected.
-
-       * tests/memchunks.c: new file which contains the old GLib mem chunks
-       implementation with prefix old_mem_chunk_.
-
-       * tests/Makefile.am: added memchunks.c
-
-Fri Dec  2 00:16:59 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gslice.c: improved gettimeofday() timer resolution by maintaining
-       acceptable load distribution of the syscall.
-       (allocator_get_magazine_threshold): reduce minimum/single-thread magazine
-       sizes to approximately page_size/2.5 to avoid excessive startup allocations.
-
-2005-12-01  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/gobject/ifacecheck.c (test_iface_base_init): Don't
-       double-free base interface members.
-
-       * tests/Makefile.am: Remove duplicate variable.
-
-Thu Dec  1 17:32:46 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gslice.[hc]: new slice allocator implementation.
-
-       * tests/slice-test.c: added random slice allocation test.
-
-       * glib/gthread.[hc]: removed newly added private thread mem API.
-
-       * glib/gthreadinit.h:
-       * glib/gmessages.c:
-       * glib/gthread.c:
-       * glib/gmem.c: divided glib threading initialisation into three phases,
-       initialisation where private keys and messaging are not available (only
-       needed by gmem.c), initialisation without messaging but private keys
-       available (gslice.c, gmessage.c), and full fledged initialisers that
-       server the rest of glib. initialisation functions got renamed to reflect
-       the limitations of their corresponding phases.
-
-       * glib/gmem.c: removed memchunk code, defer allocations to 
-       g_slice_* instead.
-
-       * glib/gmem.[hc]: removed g_slice_* skeletons.
-
-       * glib/glib.symbols: added g_slice_* symbols.
-
-       * configure.in: check for availability of posix_memalign(3), memalign(3)
-       and valloc(3). 
-
-       * glib/Makefile.am: added gslice.[hc].
-
-2005-12-01  Tor Lillqvist  <tml@novell.com>
-
-       * glib/gstdio.c (g_stat): In the Win32 implementation, strip
-       trailing slash(es) for non-root folders. stat() fails if non-root
-       folders are specified with trailing slashes. It's too much hassle
-       to demand that callers strip such slashes themselves, especially
-       as it is easy to get it wrong and strip the slash of a root
-       folder.
-       (g_rename): On NT-based Windows, use MoveFileEx() with
-       MOVEFILE_REPLACE_EXISTING to better match Unix behaviour.
-
-2005-11-28  Matthias Clasen  <mclasen@redhat.com>
-
-       Fix G_STMT_START / G_STMT_END on Solaris.  (#321972,
-       Andrew Paprocki)
-       
-       * configure.in: Check whether do { } while (0) works.
-
-       * glib/gmacros.h: Use do { } while (0) for G_STMT_START / 
-       G_STMT_END if it works.
-       
-2005-11-28  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gthread.c (g_static_rw_lock_wait, g_static_rw_lock_signal): 
-       * glib/gnode.c (g_node_depth_traverse_level): 
-       * glib/gmem.c (g_allocator_new): 
-       * glib/ghash.c (g_hash_table_unref, g_hash_table_destroy) 
-       (g_hash_table_foreach_remove_or_steal): Silence compiler
-       warnings.
-
-2005-11-27  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gunicollate.c (g_utf8_collate_key_for_filename): 
-       Don't read beyond len.  (#322520, Christian Persch)
-
-Wed Nov 23 17:34:01 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gdataset.c: access datalist flags via atomic pointer access
-       functions, instead of acquiring the dataset lock. this is faster and
-       also matches the atomic pointer readouts in gdatalistprivate.h and
-       direct pointer modifications required by gobject.c.
-
-Wed Nov 23 13:35:31 2005  Tim Janik  <timj@gtk.org>
-
-       * glib/gdataset.c: streamlined initialization code somewhat,
-       removed GData node cache.
-
-2005-11-22  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/ghash.c (g_hash_table_ref): 
-       (g_hash_table_unref): Mark these as new API.
-
-       Avoid double locking in g_intern_string (#322133,
-       Benedikt Meurer)
-
-       * glib/gdataset.c (g_quark_from_string_internal): New 
-       internal function which factors out common parts of 
-       g_quark_from[_static]_string.
-       (g_quark_from_string, g_quark_from_static_string):
-       Use g_quark_from_string_internal.
-       (g_intern_string, g_intern_static_string): Use
-       g_quark_from_string_internal, and only take the
-       lock once.
-       (g_quark_new): Don't store the strings shifted by -1
-       in the g_quarks array.
-       (g_quark_to_string): Adapt to the previous change.
-
-Tue Nov 22 14:04:26 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/ghash.h: 
-       * glib/ghash.c: 
-       g_hash_table_new_full(): create hash tables with a ref count of 1.
-       g_hash_table_ref(): atomically ref_count+=1
-       g_hash_table_unref(): atomically ref_count-=1, destroys hash table
-       when refcount reaches 0.
-       g_hash_table_destroy(): just destroy keys and values, unref by 1.
-       g_hash_table_insert(): 
-       g_hash_table_replace(): assert ref_count>0.
-
-       * glib/gatomic.h: 
-       * glib/gatomic.c: added 'volatile' qualifier to all atomic pointer and
-       integer pointers.
-
-2005-11-20  Behdad Esfahbod  <behdad@gnome.org>
-
-       * glib/guniprop.c (g_unichar_get_mirror_char): Remove unused
-       variables. (#321984, Andrew Paprocki)
-
-2005-11-18  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Bump version
-
-2005-11-17  Matthias Clasen  <mclasen@redhat.com>
-
-       * === Released 2.9.0 ===
-
-       * glib/glib.symbols: Updates
-
-       * glib/gutf8.c (g_utf8_offset_to_pointer): Add some performance
-       hints to the docs. (Paolo Borelli)
-       
-       * NEWS: Updates
-
-       * glib/gthread.c (g_thread_foreach): Mark as new api.
-
-       * README.in: Updates.
-
-       * glib/glib.symbols: 
-       * glib/gdate.h: 
-       * glib/gdate.c (g_date_set_time_t): 
-       (g_date_set_time_val): Add functions to set a date from
-       a time_t and from a GTimeVal.
-       (g_date_set_time): Deprecate.  (#314067, Roger Leigh)
-       
-       * tests/Makefile.am:
-       * tests/utf8-pointer.c: Unit tests for g_utf8_pointer_to_offset
-       and g_utf8_offset_to_pointer.
-
-       * glib/gutf8.c (g_utf8_pointer_to_offset) 
-       (g_utf8_offset_to_pointer): Handle negative offsets, and use
-       "stutter stepping" for going backwards. (#320638, Larry
-       Ewing)
-
-       * glib/gbacktrace.c:
-       * glib/gdate.c:
-       * glib/gthread.c: const correctness fixes, found
-       by Arjan van de Ven and gcc.
-       
-2005-11-16  Behdad Esfahbod  <behdad@gnome.org>
-
-       * docs/reference/glib/tmpl/unicode.sgml: Correct typo on mentioning
-       @G_UNICODE_BREAK_UNKNOWN that should be #G_UNICODE_BREAK_UNKNOWN.
-
-2005-11-09  Behdad Esfahbod  <behdad@gnome.org>
-
-       * glib/guniprop.c: Use bit hacks instead when checking a general
-       category value against multiple values.
-
-       * glib/gutf8.c: Change ISO10646 to Unicode in docs.
-
-2005-11-10  Simos Xenitellis  <simos@gnome.org>
-
-       * configure.in: Added tt (Tatar) to ALL_LINGUAS.
-
-2005-11-05  Tor Lillqvist  <tml@novell.com>
-
-       * glib/giowin32.c (g_io_win32_set_flags): Don't call g_warning().
-       (#320688) Instead set error and return failure.
-
-2005-11-07  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gmain.c (g_main_dispatch): Don't call cb_funcs->unref
-       while holding the context lock.  (#320886, Andy Wingo)
-
-2005-11-07  Billy Biggs <vektor@dumbterm.net>
-
-       * tests/refcount/Makefile.am: Add a missing reference to libglib
-       in the LDADD for this test.
-
-2005-11-07  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gmem.c (g_allocator_new): We need to set n_preallocs to a
-       nonzero value, otherwise GTK+ 2.8 breaks when compiled against
-       GLib 2.9.  (#320755, Luca Ferretti)
-
-2005-11-04  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/Makefile.am: Apply a patch from Behdad Esfahbod to 
-       use a faster lookup table for g_unichar_get_mirror_char().
-       * glib/gmirroringtable.h: The new table.
-       * glib/gunichartables.h: Remove bidi_mirroring_table.
-       * glib/gen-unicode-tables.pl: Don't generate the mirroring
-       table.
-       * glib/glib-mirroring-tab/*: Sources for the program
-       which generated gmirroringtable.h.
-
-       * glib/glist.c: Avoid some code duplication.
-
-       * glib/gscanner.h: Include gdataset.h.  (#320322)
-
-       * glib/gdebug.h: add new GDebugFlag for fatal_criticals
-       * glib/gmessages.c: (_g_debug_init): handle G_DEBUG=fatal_criticals,
-       to help find critical warnings in applications.  (#320017,
-       Vincent Untz)
-
-2005-11-02  Tor Lillqvist  <tml@novell.com>
-
-       * glib/glib.symbols: Remove large amount of trailing whitespace
-       from one line. Remove #ifdef G_UNDEFINED from around
-       g_hash_table_new and g_hash_table_new_full symbols, what was the
-       purpose of that? Add the g_slice functions.
-
-Tue Nov  1 16:24:20 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gmem.[hc]: prepared deprecation of GMemChunk and GAllocator.
-       added g_slice_*() API to allocate and cache small bits of memory.
-       an actuall allocator implementation for g_slice_*() is still pending.
-
-       * glib/gthread.[hc]: changes from a patch by Matthias Clasen.
-       changed GRealThread list to use in-structure *next; fields instead
-       of GSList, in order for thread iteration to not depenend on g_slice_*()
-       indirectly.
-       _g_thread_mem_private_get():
-       _g_thread_mem_private_set(): added accessors for private memory,
-       needed because the ordinary GPrivate implementation relies on GArray
-       and GSList and therefore indirectly on working g_slice_*() allocations.
-
-       * glib/gthread.[hc]:
-       g_thread_foreach(): new public API function to loop over all existing threads.
-
-       * glib/gdataset.c:
-       * glib/gstring.c:
-       * glib/gcache.c:
-       * glib/garray.c: 
-       * glib/gqueue.c:
-       * glib/gslist.c:
-       * glib/glist.c:
-       * glib/ghash.c:
-       * glib/gtree.c:
-       * glib/ghook.c:
-       * glib/gmain.c:
-       * glib/gnode.c:
-       removed GAllocator and free list usages and accompanying locks.
-       use g_slice_*() API to allocate and cache small bits of memory.
-
-       * glib/ghook.h: removed GMemChunk field from public API.
-
-       * glib/gslist.h:
-       * glib/glist.h: deprecate allocator API, provide _free1() for consistency.
-
-       * glib/gnode.h: deprecate allocator API.
-
-       * glib/gmain.c: reordered GPollRec fields so g_slice_free_chain() can
-       be used for poll rec lists.
-
-       * glib/grel.c: removed mem chunk usage, and allocated tuples via g_slice_*().
-       g_relation_destroy(): free all tuples from the all_tuples hash table,
-       this effectively maintains the life time track keeping of tuples.
-       g_relation_delete_tuple(): free tuples which are removed from the
-       all_tuples hash table. this fixes a temporary leak that was present
-       in the memchunk code until the destruction of the relation.
-
-2005-10-29  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/convert-test.c: Add some tests for conversions between
-       UTF-8, UCS-4 and UTF-16.
-
-       * glib/gutf8.c (g_utf8_to_ucs4, g_utf8_to_utf16): Fix handling
-       of len == -1, noticed by Morten Welinder.
-
-2005-10-27  Erdal Ronahi  <erdal.ronahi@gmail.com>
-
-       * configure.in: Added ku (Kurdish) to ALL_LINGUAS
-
-2005-10-26  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gutf8.c (g_ucs4_to_utf8): Don't set items_read twice
-       in the error case, and add some documentation.  (#319806, Morten
-       Welinder)
-
-2005-10-19  Manish Singh  <yosh@gimp.org>
-
-       * configure.in: Use AC_CHECK_FUNCS for _NSGetEnviron, to get the
-       config.h symbol automatically. Fixes bug #313731.
-
-2005-10-19  Tor Lillqvist  <tml@novell.com>
-
-       * glib/gwin32.c (g_win32_get_package_installation_directory):
-       Return a g_strdup()ed copy of the value stored in the hash table,
-       so that it can be g_free()d without leaving a dangling pointer in
-       the hash table. (#319232)
-
-2005-10-06  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gunicollate.c (g_utf8_collate_key_for_filename): Handle
-       all-zero sequences correctly.  (#317930, Sebastien Bacher)
-
-2005-10-05  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gmarkup.c (g_markup_escape_text): Doc addition
-
-       * Makefile.am: Add Collation tests.
-
-       * tests/collate/*: Inputs and expected outputs for collation tests.
-
-       * tests/run-collate-tests.sh: Script to run collation tests.
-
-       * tests/unicode-collate.c (main): Rework slightly to make
-       it usable in unit tests. Also test g_utf8_collate_key_for_filename().
-
-2005-10-01  Behdad Esfahbod  <behdad@gnome.org>
-
-       * docs/reference/glib/tmpl/unicode.sgml:
-       * glib/gen-unicode-tables.pl:
-       * glib/gunibreak.h:
-       * glib/gunichartables.h:
-       * glib/gunicode.h:
-       * tests/casefold.txt:
-       * tests/casemap.txt: Updated to Unicode 4.1.  There are five new
-       GUnicodeBreakType types.  That may break some applications, like
-       Pango <= 1.10.
-
-2005-09-26  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gstrfuncs.c (g_ascii_strtoull): Add details to the 
-       docs.  (#314393, Matthew F. Barnes)
-
-       * glib/glib.symbols:
-       * glib/gprintf.h: Remove g_snprintf() and g_vsnprintf(), since
-       they are already declared in glib.h. This doesn't break documented
-       use of gprintf.h, but should probably be pointed out in the 
-       release notes for 2.10. (#314232, Behdad Esfahbod)
-
-Tue Sep 20 13:16:04 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gpattern.c (g_pattern_ph_match): applied significant recursion
-       complexity optimization, based on a patch from Matthias Clasen.
-
-       * tests/patterntest.c: more tests, mostly from matthias.
-
-2005-09-20  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gqueue.c (g_queue_insert_sorted): Correct the docs.
-       (#316703, Mark Drago)
-
-Mon Sep 19 17:23:23 2005  Tim Janik  <timj@imendio.com>
-
-       * glib/gpattern.c: applied a patch from matthias which checks on the
-       upper bound of GPatternSpec length to optimize matches.
-       cosmetic fixups.
-
-       * tests/patterntest.c: added more match cases.
-
-2005-09-16  Tor Lillqvist  <tml@novell.com>
-
-       * glib/gstrfuncs.c (g_ascii_strcasecmp, g_ascii_strncasecmp): Add
-       warning to doc comment that these functions should not be used on
-       encodings like CP932.
-
-2005-09-14  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/keyfile-test.c: Add a test for grup names of length 1.
-
-       * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
-       of length 1.  (#316309)
-       
-2005-09-12  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
-
-2005-09-11  Sebastian Wilhelmi  <seppi@seppi.de>
-
-       * tests/refcount/Makefile.am (INCLUDES): Link the the refcount
-       tests to the system thread library $(G_THREAD_LIBS). Fixes #313744
-       and #314217.
-
-2005-09-11  Kjartan Maraas  <kmaraas@gnome.org>
-
-       * glib/gmain.c: (g_child_watch_prepare), (g_child_watch_check),
-       (child_watch_helper_thread): Remove some dead code. Closes
-       bug #315278.
-
-2005-09-07  Tor Lillqvist  <tml@novell.com>
-
-       * glib/Makefile.am: Create also a console version of the
-       gspawn-win32-helper program, gspawn-win32-helper-console.exe.
-       It's otherwise identical to gspawn-win32-helper.exe, except marked
-       as a console application (linked without the -mwindows option).
-       
-       * glib/gspawn-win32.c (do_spawn_directly, do_spawn_with_pipes):
-       Drop the dont_wait parameter. Its truth value correlated 100% with
-       the NULLness of the exit_status parameter anyway, so it's enough
-       to check whether exit_status is NULL. Invert the sense of the
-       dont_return_handle parameter and rename it to do_return_handle, to
-       make the code easier to read by avoiding double negations.
-
-       (g_spawn_sync_utf8, g_spawn_async_with_pipes_utf8): Modify calls
-       to do_spawn_with_pipes() accordingly.
-
-       (do_spawn_with_pipes): If we have a console, use the console
-       version of the helper program, otherwise use the GUI one. This
-       avoids extra console windows opening up in some situations. (In
-       case a console application uses the GUI gspawn-win32-helper.exe to
-       spawn another console application we would get a separate console
-       for the spawned console application).
-
-       * glib-zip.in: Distribute also gspawn-win32-helper-console.exe.
-
-2005-09-05  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gmappedfile.c (g_mapped_file_new): Report an error
-       if the file is too large.  (#315275, Kjartan Maraas)
-
-       * glib/gkeyfile.c (g_key_file_load_from_fd): The return value
-       of read() is signed.  (#315273, Kjartan Maraas)
-       
-2005-08-31  Tor Lillqvist  <tml@novell.com>
-
-       * glib/gutils.h: Wrapping atexit() is a bad idea on Windows, where
-       the EXE and each DLL have their own atexit function chains.
-
-       #define g_atexit as atexit instead. This means it has a
-       better chance of doing what the caller wants. For instance,
-       gtkhtml calls g_atexit() registering a function in gtkhtml
-       itself. This caused a crash when g_atexit() was implemented as a
-       function in the GLib DLL. The gtkhtml DLL was already unloaded by
-       the time the GLib DLL got unloaded.
-
-       * glib/gutils.c: #undef the #define mentioned above, to also get a
-       real g_atexit() into the DLL for backward compatibility. Document
-       the Windows behaviour of g_atexit(), and document the varying ways
-       atexit() can behave in the context of dynamically loaded modules
-       on Unix.
-
-2005-08-31  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/glib.symbols: 
-       * glib/gquark.h: 
-       * glib/gdataset.c: Add string interning functions.
-
-2005-08-28  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/giochannel.c: Unify some near-duplicate strings. (#314654,
-       Clytie Siddall)
-       
-2005-08-26  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Bump version to 2.9.0
-
-2005-08-25  Tor Lillqvist  <tml@novell.com>
-
-       Make also the g_spawn*() functions take parameters in the GLib
-       file name encoding, i.e. UTF-8, on Windows. Has no impact on Unix
-       API or ABI. Like the other GLib API that was earlier changed to
-       use UTF-8 on Windows, the names of the functions that take UTF-8
-       have _utf8 suffixes added by using preprocessor macros in the
-       header file. The old names are kept for functions with the old
-       behaviour, taking parameters in the system codepage, for DLL ABI
-       stability.
-       
-       * glib/gspawn.h: On Win32 add the suffix _utf8 to the names of the
-       g_spawn*() functions.
-       
-       * glib/gspawn-win32.c: Use wide-char API on NT-based
-       Windows. Convert parameters from UTF-8 to wide chars (NT) or
-       system codepage (Win9x) and call the C library _wspawn*() or
-       spawn*() functions respectvely. Add DLL ABI stability versions
-       that take parameters in the system codepage.
-
-       * glib/gspawn-win32-helper.c: On NT-based Windows use the
-       wide-char versions of argv and envp, and use wide-char API to
-       change directory and spawn the program to run. Remove the verbose
-       debugging output, it was too complex to modify for the wide-char
-       features. (Just add temporary debugging printouts if needed, no
-       need to have them permanently in the source.)
-
-       * glib/gspawn.c: Corresponding documentation updates.
-
-       * glib/glib.symbols: Corresponding changes: Mark the ABI stability
-       symbols as PRIVATE, add the new _utf8-suffixed ones.
-
-2005-08-24  Stepan Kasal  <kasal@ucw.cz>
-
-       * glib/gtypes.h (G_MININT64): Cast the constant to gint64; it is
-       guint64 otherwise and that can produce warnings about comparison
-       between signed and unsigned.
-
-2005-08-23  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gutils.c: Fix the crt_externs.h include.
-
-2005-08-23  Stepan Kasal  <kasal@ucw.cz>
-
-       * NEWS: Fix spelling of my first name.
-
-2005-08-23  Matthias Clasen  <mclasen@redhat.com>
-
-       * Bump version
-
-       * === Released 2.8.1 ===
-
-       * NEWS: Updates
-
-2005-08-20  Hans Breuer  <hans@breuer.org>
-
-       * glib/makefile.msc.in : link with ws2_32.lib
-
-2005-08-18  Tor Lillqvist  <tml@novell.com>
-
-       * configure.in: Check for <sys/wait.h>
-
-       * glib/gbacktrace.c: Include <sys/wait.h> on if HAVE_SYS_WAIT_H.
-
-2005-08-18  Ross Burton  <ross@burtonini.com>
-
-       * glib/gstring.c:
-       Optimise single-character insertions.
-       
-       * glib/gutf8.c:
-       Note copied code.
-       
-       * tests/string-test.c:
-       Add tests for new optimisation, and fix a leak.
-
-2005-08-17  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Check for crt_externs.h and _NSGetEnviron.
-
-       * glib/gutils.c: On Darwin, include crt-externs.h and
-       define environ using _NSGetEnviron().  (#313731)
-
-2005-08-16  Stepan Kasal  <kasal@ucw.cz>
-
-       * glib/gutils.c (g_get_any_init): Move the body of the big if...
-       (g_get_any_init_do): ... to this new function.
-       (g_get_any_init): Declare as inline.
-       (g_get_any_init_locked): New inline function, does the locking.
-       Make use of these two throughout the code.
-
-2005-08-15  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gbacktrace.c (g_on_error_stack_trace): Wait for
-       the child process and then simply return. This makes 
-       The "S" option work as documented in g_on_error_query().
-       (#313125, Matthew F. Barnes)
-
-       * glib/gunicode.h: Update the link to Unicode category
-       values.  (#313369, Behnam Esfahbod)
-
-       * glib/gqueue.c (g_queue_find_custom): Clarify docs
-       a little.  (#311727, Tristan van Berkom)
-
-       * glib/abicheck.sh, gobject/abicheck.sh: Make the 
-       check work on ia64 too, where some symbols ended up 
-       in yet another section.
+2006-03-23  Matthias Clasen  <mclasen@redhat.com> 
 
+       === Branch for 2.10 ===