2.9.3
[platform/upstream/glib.git] / ChangeLog.pre-2-12
index bcc679d..9893ef8 100644 (file)
-2005-08-03  Matthias Clasen  <mclasen@redhat.com>
+2006-01-16  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gstdio.h: Add G_BEGIN_DECLS/G_END_DECLS.  (#312424)
-
-2005-08-02  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gconvert.c (g_convert_with_iconv): Don't go in an
-       infinite loop if the input text ends in an incomplete multibyte
-       character.  (#312402, Sebastien Bacher)
-
-       * Bump version
-
-       * === Released 2.7.5 ===
-
-       * NEWS: Updates
-
-2005-08-02  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gconvert.c (g_convert_with_iconv, g_convert_with_fallback):
-       Cleanup converter state after the conversion. Document streaming
-       conversion pitfalls.  (#311337)
-
-2005-08-02  Tor Lillqvist  <tml@novell.com>
-
-       * tests/refcount/objects.c 
-       * tests/refcount/properties.c 
-       * tests/refcount/signals.c: Use g_usleep() instead of sleep() for
-       portability.
-
-Mon Aug  1 23:33:47 2005  Tim Janik  <timj@imendio.com>
-
-       * tests/refcount/closures.c: test high contention on closure
-       reference counts to trigger and catch non-atomic updates.
-
-       * tests/refcount/objects.c:
-       * tests/refcount/objects2.c: 
-       * tests/refcount/properties.c: 
-       * tests/refcount/properties2.c: 
-       * tests/refcount/signals.c:
-       fixed up test and threading fundamentals. variables accessed from all 
-       threads need to be volatile. context switches are enforced by using
-       g_thread_yield(), not g_usleep(1) which may result in busy waits on 
-       some platforms. for testcode, always consider all warnings and
-       critical messages fatal. issue the currently running program on
-       stdout. improved progress indicators.
-
-       * tests/refcount/properties.c:
-       * tests/refcount/objects.c:
-       don't overdo the number of testing threads to keep the testing machine
-       usable, 2 threads can produce as much contention as 20 if executing the
-       same code.
-
-       * tests/refcount/signals.c: only start 1 thread per object. GObject 
-       doesn't provide mutually exclusive object access, but only mutually
-       exclusive reference count modification.
-
-       * tests/Makefile.am: added closures test.
-
-2005-08-01  Tor Lillqvist  <tml@novell.com>
-
-       * tests/uri-test.c: Make it pass on Win32.
-       (from_uri_tests[]): Take into consideration that on Win32 we don't
-       return "localhost" hostnames.
-       (safe_strcmp_filename): New function that considers slash and
-       backslash equal on Win32.
-       (safe_strcmp_hostname): New function that considers "localhost"
-       equal NULL on Win32.
-       (run_roundtrip_tests): Use safe_strcmp_filename() and
-       safe_strcmp_hostname().
-
-Sun Jul 31 01:50:20 2005  Tim Janik  <timj@gtk.org>
-
-       * glib/gdataset.c:
-       moved G_DATALIST_*_POINTER() macros here, because proper use requires
-       the global g_dataset_global mutex to be acquired.
-       g_datalist_id_get_data():
-       g_datalist_unset_flags():
-       g_datalist_set_flags(): properly acquire and release dataset mutex.
-
-       * glib/gdatasetprivate.h: implement G_DATALIST_GET_FLAGS() via atomic
-       pointer access to account for memory barriers. moved all other macros.
-
-2005-07-26  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/goption.c: Include glibintl.h, not gi18n.h, noticed
-       by Dan Winship.
-
-       * configure.in: Try -mt as compiler flag for threads, needed
-       for the HP C compiler on HP-UX.  (#163051, Paul Cornett)
-
-       * glib/ghash.c (g_hash_table_foreach): Fix a typo in the 
-       docs.  (#311569, Ross Burton)
-
-2005-07-21  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Bump version 
-
-       * === Released 2.7.4 ===
+       * === Released 2.9.3 ===
 
        * NEWS: Updates
 
-2005-07-20  Manish Singh  <yosh@gimp.org>
-
-       * tests/refcount/signals.c: use G_CALLBACK for signal connections.
-
-2005-07-20  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gthreadpool.c (g_thread_pool_free): Don't get
-       stuck in here if immediate is TRUE.  (#310954, 
-       Hong Jen Yee)
-
-       * tests/threadpool-test.c (main): Test immediate == TRUE.
-
-2005-07-20  Tor Lillqvist  <tml@novell.com>
-
-       * glib/gutils.h (g_win32_get_system_data_dirs): Make this an
-       inline function. Define it only if G_CAN_INLINE and not
-       C++. (#173098)
-
-2005-07-19  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gstring.c (g_string_chunk_insert_len): Avoid
-       an unnecessary strlen if len is -1.  (#169692, 
-       Benoit Dejean)
-
-       * glib/gatomic.c (g_atomic_pointer_compare_and_exchange): 
-       Fix g_atomic_pointer_compare_and_exchange on sparc64.
-       (#167572, Gert Doering)
-
-2005-07-15  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Bump version
-
-       * === Released 2.7.3 ===
+       * glib/gthread.h (g_static_mutex_get_mutex_impl_shortcut): 
+       Rework the strict aliasing fix to not break C++, pointed
+       out by Murray Cumming.
        
-2005-07-15  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/Makefile.am (SUBDIRS): Add tests/refcount
-
-       * configure.in: Add tests/refcount
-
-       * tests/refcount/properties.c: Test property changes
-       from multiple threads.
+       * glib/gasyncqueue.c (g_async_queue_push_sorted_unlocked):
+       Signal waiting threads, problem noticed by Christian Kellner.
 
-       * tests/refcount/signals.c: Test signal emission from
-       multiple threads.
+2006-01-16  Matthias Clasen  <mclasen@redhat.com>
 
-       * tests/refcount/objects.c: Test refcounting from 
-       multiple threads.
-
-       * tests/refcount/objects2.c: 
-       * tests/refcount/properties2.c: Tests to measure the 
-       overhead of threadsafe refcounting.
+       Fix bug 326747, Alberto Ruiz:
        
-       * glib/giochannel.c (g_io_channel_ref, g_io_channel_unref): 
-       Use atomic operations to make refcounting
-       threadsafe.  (#166020, Wim Taymans)
-
-       * NEWS: Updates
-
-2005-07-14  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/spawn-test.c: 
-       * tests/uri-test.c: 
-       * tests/thread-test.c: 
-       * tests/queue-test.c: 
-       * tests/mainloop-test.c: 
-       * tests/iochannel-test.c: 
-       * tests/gio-test.c: 
-       * tests/child-test.c: Make the tests silent on success.
-
-2005-07-13  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gconvert.c (make_valid_utf8): Change this function to
+       replace unknown characters by the Unicode replacement character
+       instead of '?', and don't append "(invalid encoding)".
+       (g_filename_display_name, g_filename_display_basename): Document
+       how to determine if the filename was in an invalid encoding.
 
-       * glib/gfileutils.c (g_mkdir_with_parents): Fix a 
-       typo.  (#310243, Richard Laager)
+2006-01-14  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/goption.c (g_option_group_add_entries): Warn if a
-       short name is not acceptable.
+       * glib/gtree.c: Replace the simple recursive implementation
+       by a nonrecursive, threaded implementation by Maurizio 
+       Monge.  (#169285)
 
-2005-07-12  Matthias Clasen  <mclasen@redhat.com>
+2006-01-12  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/goption.h (G_OPTION_FLAG_NOALIAS): 
-       * glib/goption.c: Add and implement a new flag
-       to turn off the automatic <groupname>- prefixing
-       for conflict resolution of long option names. (#171840,
-       Adam McLaurin)
-       
-       All optional callback arguments  (#308886, Pawel
-       Sliwowski)
-
-       * glib/goption.h (G_OPTION_FLAG_OPTIONAL_ARG): 
-       * glib/goption.c: Add and implement a new flag
-       to indicate that a callback *optionally* takes another
-       argument.
+       * tests/asyncqueue-test.c (main): Fix the
+       assert to not always trigger.  (#326558, 
+       Daichi Kawahata)
 
-       * tests/option-test.c: Add tests for optional arguments.
+2006-01-11  Matthias Clasen  <mclasen@redhat.com>
 
-2005-07-12  Matthias Clasen  <mclasen@redhat.com>
+       * tests/convert-test.c: Don't test items_read and
+       items_written in error cases where it is not set.
 
-       * glib/gthread.c (g_static_rec_mutex_lock_full): Don't lock
-       if depth is zero.  (#310148, Wim Taymans)
+       * tests/asyncqueue-test.c: Set error to NULL.
 
-2005-07-10  Matthias Clasen  <mclasen@redhat.com>
+2006-01-08  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gutils.c (g_listenv): Ignore anomalous environment
-       entries which are not of the form variable=value.  (#309859,
-       Morten Welinder)
+       * glib/gtree.c: Break some long lines.
 
-2005-07-09  Tor Lillqvist  <tml@novell.com>
+       * tests/tree-test.c: Add more tests.
 
-       * glib/giowin32.c: Totally rewritten socket channel
-       implementation. See discussion in bug #147392.
+       * glib/gslice.c: Include config.h first, pointed out
+       by Bogdan Nicula.
 
-       * configure.in: Don't use autoconf variables for the resource
-       object files on Win32 any longer. Instead handle that in the
-       Makefile.am files. Check for windres.
+2005-12-20  Sven Herzberg  <herzi@gnome-de.org>
 
-       * glibconfig.h.win32.in: Minor tuning to match the
-       configure-produced glibconfig.h closely.
+       * docs/reference/gobject/tmpl/gtype.sgml: explain that
+       G_TYPE_INSTANCE_GET_CLASS() does behave different during
+       initialization
 
-       * glib/Makefile.am: Don't use the scripts in build/win32 to
-       compile glib.rc into a resource object file. (This means we lose
-       the build number increment magic, but I doubt it was that useful
-       anyway.) Instead use windres directly. To pass the normal .o file
-       produced by windres through libtool, which wants .lo files, pass
-       it directly to the linker using a -Wl option.
+2006-01-06  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/glib.rc.in: Thus replace BUILDNUMBER with 0.
+       * glib/gslice.c: Only define _XOPEN_SOURCE if we know
+       that we have posix_memalign().  (#323937, Bogdan Nicula)
 
-2005-07-08  Matthias Clasen  <mclasen@redhat.com>
+2006-01-05  Matthias Clasen  <mclasen@redhat.com>
 
        * configure.in: Bump version
-       
-       * === Released 2.7.2 ===
-
-       * NEWS: Updates
-
-2005-07-07  Matthias Clasen  <mclasen@redhat.com>
 
-       * configure.in: Make the size_t size detection work on AIX. 
-       (#309725)
+       * === Released 2.9.2 ===
 
-2005-07-06  Matthias Clasen  <mclasen@redhat.com>
+2006-01-05  Hans Breuer  <hans@breuer.org>
 
-       * configure.in: Require a newer gtk-doc.
+       * glib/makefile.msc.in : added gslice.obj
 
-2005-07-01  Hans Breuer  <hans@breuer.org>
+2006-01-05  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gmessages.c : include <process.h> for getpid()
-       * glib/gmappedfile.c : include <io.h> for close() etc.
-       * glib/makefile.msc.in : add    gmappedfile.obj
-
-2005-07-01  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gkeyfile.c (g_key_file_get_key_comment): 
-       (g_key_file_get_top_comment): Don't reverse the order of multiline 
-       comments.
-       (g_key_file_get_group_comment): Actually get the group comment.
-
-       * tests/keyfile-test.c (test_comments): Test that comments are
-       handled properly.  (#309263, Mikael Magnusson)
-
-2005-06-30  Matthias Clasen  <mclasen@redhat.com>
-
-       * configure.in: Bump version
-
-       * === Released 2.7.1 ===
-
-2005-06-30  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gstring.c (g_str_hash): Fix portability issues.  
-       (#307064, Morten Welinder)
+       * NEWS: Updates
 
-       Apply a patch which may make GLib work on BeOS again.  
-       (#309157, Kian Duffy)
+       * glib/gmain.c: Clarify the documentation of source ids
+       a bit.  (#325874, Dan Williams)
 
-       * glib/gmain.c: Update the BeOS includes.
+       * configure.in: Fix another strict aliasing problem.
 
-       * glib/gstdio.c: 
-       * glib/gutils.c (g_find_program_in_path): 
-       * glib/gbacktrace.c (g_on_error_stack_trace): Use the UNIX
-       implementation on BeOS, as well.
+       * glib/gthreadpool.c: Avoid use of varargs macro.  (#325864,
+       Kazuki IWAMOTO)
 
-       * configure.in: Don't put glib 1.0 into G_MODULE_LIBS, even
-       on BeOS.
+2006-01-04  Manish Singh  <yosh@gimp.org>
 
-       * NEWS: Updates
+       * 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)
 
-2005-06-26  Tor Lillqvist  <tml@novell.com>
+Wed Jan  4 13:33:25 2006  Tim Janik  <timj@gtk.org>
 
-       * glib/Makefile.am: libtool installs/uninstalls the import
-       library, no need to do it ourselves. Do still install/uninstall
-       the .def file, though.
+       * glib/gslice.c (magazine_cache_pop_magazine): don't reverse chunk 
+       order when creating magazines, so we hand out chunks with ascending
+       adresses.
 
-       * glib/gmappedfile.c: Add Win32 implementation.
-       (g_mapped_file_free): Don't mention writable shared mappings in
-       the doc comment. Free the GMappedFile struct.
+2006-01-04  Abel Cheung  <maddog@linuxhall.org>
 
-       * tests/mapping-test.c (main): No kill() or SIGUSR1 on Win32, use
-       a flag file instead to stop the child. Use g_usleep() instead of
-       sleep().
+       * configure.in: Added "ml" "zh_HK" to ALL_LINGUAS.
 
-2005-06-24  Matthias Clasen  <mclasen@redhat.com>
+2006-01-03  Martyn Russell  <martyn@imendio.com>
 
-       Add an mmap() wrapper called GMappedFile. (#148218,
-       David Schleef, Behdad Esfahbod)
+       * 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).
        
-       * glib/gmappedfile.[hc]: New files.
-
-       * configure.in: Check for mmap.
+       * 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.
        
-       * glib/Makefile.am: Add new files.
+2006-01-03  Matthias Clasen  <mclasen@redhat.com>
        
-       * glib/glib.symbols: Add new functions.
-
-       * glib/glib.h: Include gmappedfile.h
-
-       * tests/mapping-test.c: Tests for GMappedFile.
-
-       * tests/Makefile.am: Add new file.
+       * glib/gmain.h: Add new functions here, too.
 
-       * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Add --enable-man.
-
-2005-06-24  Tor Lillqvist  <tml@novell.com>
-
-       * glib/Makefile.am (install-libtool-import-lib): Current GNU tools
-       do understand the PRIVATE keyword.
-
-       * glib/gfileutils.c (g_mkdir_with_parents): Return error with
-       EINVAL also for empty pathnames.
-       (g_build_pathname_va): Fix typo.
-
-Thu Jun 23 15:52:08 2005  Manish Singh  <yosh@gimp.org>
-
-       * glib/gfileutils.c: g_build_filename_va is only use in the G_OS_WIN32
-       case, so compile it conditionally.
+       * glib/glib.symbols: Add new functions.
 
-2005-06-23  Matthias Clasen  <mclasen@redhat.com>
+2005-12-20  Michael Meeks  <michael.meeks@novell.com>
 
-       * tests/keyfile-test.c (test_group_remove): Don't leak
-       memory here.
+       * glib/gmain.c (g_main_context_is_owner): new method
+       to determine if the current thread is the owner of the
+       context.
 
-       * glib/gkeyfile.c (g_key_file_load_from_data_dirs): Don't
-       leak output_path.  (#308546, Kjartan Maraas)
+2006-01-02  Matthias Clasen  <mclasen@redhat.com>
 
        * glib/glib.symbols: 
-       * glib/gfileutils.h: 
-       * glib/gfileutils.c (g_build_pathv, g_build_filenamev): 
-       Variants of g_build_path() and g_build_filename()
-       which take a string array instead of varargs.  
-       (#149092, Todd A. Fisher)
+       * 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)
 
-       * tests/strfunc-test.c: Add tests for g_build_pathv() 
-       and g_build_filenamev().
+2006-01-01  Tor Lillqvist  <tml@novell.com>
 
-2005-06-22  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)
 
-       * glib/gfileutils.c
-       * glib/gfileutils.h
-       * glib/glib.symbols
-       * tests/testglib.c: Rename g_makepath() to g_mkdir_with_parents().
-
-2005-06-22  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/goption.c (parse_short_option, parse_long_option): 
-       Pass the option name also in the NO_ARG case.  (#308602,
-       Masatake YAMATO)
-       (parse_arg): Properly store changes for arrays.  (#308528,
-       Roger Leigh)
+2005-12-29  Matthias Clasen  <mclasen@redhat.com>
 
-2005-06-22  Tor Lillqvist  <tml@novell.com>
+       * glib/gutils.c (glib_check_version): Fix a copy-and-paste error
+       in the docs.  (#325273, Declan Naughton)
 
-       * glib/gfileutils.c (g_makepath): New function. Creates a
-       directory including intermediate parent directories as
-       needed. (#60509)
+2005-12-27  Manish Singh  <yosh@gimp.org>
 
-       * glib/gfileutils.h: Declare it.
+       * tests/run-collate-tests.sh: use LC_ALL instead of LC_COLLATE, to
+       make sure we really override things.
 
-       * glib/gutils.c (g_get_host_name): New function. Returns the
-       machine's name, or one of its names. Document that it is
-       best-effort only, and not guaranteed to be unique or anything.
-       (g_get_any_init): Get the host name here. On Unix use
-       gethostname(), on Windows use GetComputerName(). (#5200)
-
-       * glib/gutils.h: Declare it.
-
-       * glib/glib.symbols: Add new functions.
-
-       * tests/testglib.c: Test g_makepath() and g_get_host_name().
+2005-12-27  Matthias Clasen  <mclasen@redhat.com>
        
-2005-06-18  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/goption.h: 
-       * glib/goption.c: Add G_OPTION_FLAG_NO_ARG and
-       G_OPTION_FLAG_FILENAME to allow greater control of
-       G_OPTION_ARG_CALLBACK options. (#302632, Dan Winship)
+       Fix #316221, Michal Benes, Stanislav Brabec;
 
-       * tests/option-test.c: test callback args
+       * 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().
 
-2005-06-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>
+       * glib/gdatasetprivate.h: Add a cast to silence compiler
+       warnings.  (#321978, Andrew Paprocki)
 
-       * configure.in: Added 'th' (Thai) to ALL_LINGUAS.
+       Partial fix for bug #323937, Bogdan Nicula.
 
-2005-06-10  Matthias Clasen  <mclasen@redhat.com>
+       * configure.in: Check for malloc.h
+       * glib/gslice.c: Don't include malloc.h unconditionally.
 
-       * configure.in: Bump version
+2005-12-27  Manish Singh  <yosh@gimp.org>
 
-       * === Released 2.7.0 ===
-
-       * NEWS: Updates
+       * tests/run-collate-tests.sh: export LC_COLLATE so it takes.
+       (#324950, Dan Yefimov)
 
-2005-06-09  Matthias Clasen  <mclasen@redhat.com>
+2005-12-26  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Better
-       error checking. (#306389, Morten Welinder)
+       * glib/gslice.c: On Win32, include process.h  (#325015, Kazuki
+       Iwamoto)
 
-       * glib/goption.c (parse_int): Set errno to 0 before calling
-       strtol.  (#306388, Morten Welinder)
+2005-12-25  Matthias Clasen  <mclasen@redhat.com>
 
-2005-06-09  Tor Lillqvist  <tml@novell.com>
+       * AUTHORS: Update my email
 
-       * glib/gstdio.h
-       * glib/gstdio.c
-       * glib/glib.symbols: Add a chdir() wrapper, too.
+       * tests/slice-test.c: Fix C99isms.  (#324950, Dan Yefimov)
 
-       * glib/glib.symbols: Add g_win32_locale_filename_from_utf8().
-
-       * glib/gwin32.c (g_win32_locale_filename_from_utf8): Clarify doc
-       comment.
-
-2005-06-08  Tor Lillqvist  <tml@novell.com>
-
-       * glib/gutils.c (get_windows_directory_root): New helper function
-       on Win32, returns the root of the drive (or possibly share) where
-       the Windows directory is. (In the case of Terminal Server sessions
-       the Windows directory is a per-user folder.)
-       (g_get_any_init): Use get_windows_directory_root() as last resort
-       for both temp directory and home directory. g_get_home_dir() now
-       never returns NULL on Win32. Don't look at HOMEDRIVE and
-       HOMEPATH. HOME, USERPROFILE, CSIDL_PROFILE and Windows directory
-       drive root should be enough.
+2005-12-21  Matthias Clasen  <mclasen@redhat.com>
+       
+       * README.in: Add some notes on when 'make check' may fail.
 
-2005-06-08  Matthias Clasen  <mclasen@redhat.com>
+2005-12-20  Matthias Clasen  <mclasen@redhat.com>
 
        * glib/glib.symbols: 
-       * glib/gunicode.h: 
-       * glib/gunicollate.c (g_utf8_collate_key_for_filename): 
-       New function to calculate collation keys which are more
-       suitable for sorting filenames.  (#172690, Ole Laursen)
-
-Fri May 27 17:18:00 2005  Manish Singh  <yosh@gimp.org>
-
-       * glib/goption.c (parse_short_option): initialize option_name
-       before using it.
-
-2005-05-27  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/goption.c (parse_short_option, parse_long_option):
-       Return an error if an option is missing its argument.  (#305576,
-       Björn Lindqvist)
-
-       * tests/option-test.c (missing_arg_test): Add a testcase.
-
-Wed May 25 15:33:51 2005  Manish Singh  <yosh@gimp.org>
-
-       * glib/goption.c (print_help): rest_description should be const.
-
-2005-05-25  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gunidecomp.c (combine_hangul): Don't eat Hangul 
-       when normalizing.  (#301742, reported by Christian Biere,
-       patch by Noah Levitt)
-
-2005-05-24  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/goption.c (print_help): If the remaining argument
-       has an arg_description, display the synopsis as
-       PROGNAME [OPTION...] REST  (#305346, Noah Levitt)
-
-2005-05-20  Federico Mena Quintero  <federico@ximian.com>
-
-       Merged from glib-2-6:
-
-       * glib/gspawn.c (g_spawn_command_line_sync): Clarify the meaning
-       of exit_status(); it's not the return code from the child, but
-       rather the waitpid() status.
-
-2005-05-18  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gunidecomp.c: Correct the end of the Hangul 
-       Syllables range, from 0xd7af to 0xd7a3, in several
-       places.  (#301984, Changwoo Ryu)
-
-2005-05-17  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/tree-test.c (main): Check the return values of
-       g_tree_remove().
+       * glib/gthreadpool.h: 
+       * glib/gthreadpool.c (g_thread_pool_set_sort_function): New function
+       to sort tasks pushed into a threadpool.  (#324479, Martyn Russell)
 
-       * glib/gtree.c (g_tree_remove, g_tree_steal): Return
-       a boolean indicating wether the key was found.  (#302545,
-       Matthew F. Barnes)
+       * tests/threadpool-test.c: Test this.
 
-2005-05-06  Brian Cameron  <brian.cameron@sun.com>
+Tue Dec 20 18:14:14 2005  Tim Janik  <timj@imendio.com>
 
-       * configure.in, gmodule-no-export-2.0-uninstalled.pc.in,
-         Makefile.am:  Added gmodule-no-export-2.0-uninstalled.pc.in
-         to allow building of other libraries like pango when 
-         glib is uninstalled.
+       * 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.
 
-2005-05-06  Matthias Clasen  <mclasen@redhat.com>
+       * tests/slice-color.c: new program to test cache colorization effects.
 
-       * tests/option-test.c: Add a testcase.
-       
-       * glib/goption.c (g_option_context_parse): Treat '-'
-       on its own as a non-option argument.  (#168008, Tim Musson,
-       Thomas Leonard and others)
-
-2005-05-05  Owen Taylor  <otaylor@redhat.com>
-
-       * glib/gdataset.[ch] glib/gdatasetprivate.h: Add 
-       g_datalist_set/unset_flags(), g_datalist_get_flags() functions
-       to squeeze some bits into a GDataSet... this is needed for
-       efficient implementation of toggle references in GObject.
+       * tests/slice-test.c: trade G_SLICE_CONFIG_ALWAYS_FREE for 0 duration
+       G_SLICE_CONFIG_WORKING_SET_MSECS.
 
-       * tests/gobject/references.c tests/gobject/Makefile.am:
-       Add a test case for weak and toggle references.
+2005-12-17  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gfileutils.[ch]: Rename g_file_replace() back
-       to g_file_set_contents().
+       * glib/goption.c (parse_short_option): Set an error in all
+       failure cases.  (#324332, Tim-Philipp Müller) 
 
-       * glib/glib.symbols: Update.
+2005-12-17  Sebastian Wilhelmi  <seppi@seppi.de>
 
-2005-05-02  Matthias Clasen  <mclasen@redhat.com>
+       * 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.
 
-       * glib/gstring.c (g_str_equal, g_str_hash): Move docs
-       inline.
+2005-12-16  Matthias Clasen  <mclasen@redhat.com>
 
-2005-05-01  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)
 
-       * glib/ghash.h: Rename some parameters to make gtk-doc
-       happy.
+Tue Dec 13 10:13:32 2005  Tim Janik  <timj@imendio.com>
 
-       * glib/gutils.c: 
-       * glib/gwin32.c: 
-       * glib/gstdio.c: Fix some typos, mark new API as "Since 2.8".
-
-2005-04-29  Matthias Clasen  <mclasen@redhat.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.
 
-       * glib/gtree.c: Clarify some docs. (#302062, Matthew F. Barnes)
+2005-12-09  Matthias Clasen  <mclasen@redhat.com>
 
-2005-04-28  Matthias Clasen  <mclasen@redhat.com>
+       * configure.in: Bump version
 
-       * glib/gstrfuncs.c (g_strcompress): Warn and don't crash
-       when meeting a trailing \\.  (#301373, Benjamin Otte)
+       * === Released 2.9.1 ===
 
-2005-04-27  Tor Lillqvist  <tml@novell.com>
+2005-12-09  Alexander Larsson  <alexl@redhat.com>
 
-       * glib/gconvert.c (open_converter, g_convert_with_iconv): Don't
-       call g_set_error() unless the GError pointer is non-NULL. This
-       avoids infinite recursion problems in certain rare situations on
-       Windows, when g_locale_from_utf8() is called from
-       _glib_get_locale_dir() after the change below. It's the
-       _glib_gettext() calls to translate error messages that are
-       parameters to g_set_error() that cause the recursion, not
-       g_set_error() itself.
+       * glib/glist.h: 
+       * glib/gslist.h:
+       Use G_GNUC_WARN_UNUSED_RESULT on list functions that return
+       the whole list.
 
-       * glib/gwin32.c (g_win32_locale_filename_from_utf8): New
-       function. Converts a filename to the system codepage, and if a
-       straight conversion isn't possible (because the filename contains
-       characters not in the system codepage), try looking up the
-       filename (which should refer to an existing file for this to
-       succeed) with short (8.3) pathname components.
+2005-12-08  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gutils.c (_glib_get_locale_dir): No need to cache the
-       result, this function is normally called only once. Return the
-       path to the locale directory in system codepage, not UTF-8. The
-       path is passed to bindtextdomain(), which doesn't use UTF-8 file
-       names. Use g_win32_locale_filename_from_utf8(). (#301772)
+       * NEWS: Updates
 
-       Don't do run-time lookup of message catalog directory on
-       Cygwin. Cygwin is supposed to look and feel like Unix, and on Unix
-       we use paths fixed at configure time.
+2005-12-07  Martyn Russell  <martyn@imendio.com>
 
-2005-04-19  Tor Lillqvist  <tml@novell.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.
 
-       * glib/gutils.h: Minor comment improvement.
+       * tests/asyncqueue-test.c:
+       - Updated the sort function to reflect the example in the
+       documentation for gasyncqueue.c.
 
-2005-04-18  Tor Lillqvist  <tml@novell.com>
+2005-12-07  Martyn Russell  <martyn@imendio.com>
 
-       * glib/gfileutils.c: No <sys/wait.h> on Win32. Definition of
-       save_errno was missing in one place.
+       * 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>
 
-Sat Apr 16 20:15:44 2005  Soeren Sandmann  <sandmann@redhat.com>
+       * glib-gettextize.in: Look up prefix at run-time on Win32,
+       assuming the standard directory structure with glib-gettextize in
+       $prefix/bin.
 
-       * glib/gfileutils.c (g_file_replace): Save the errno in various
-       places
+2005-12-06  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gfileutils.c (set_umask_permissions): Fork a child and do
-       chmod() to the umask() permissions there.
+       * glib/gmem.h: Exempt GTK+ from the mem chunk deprecation, since
+       we need GTK+ 2.8 to compile against GLib 2.10.
 
-2005-04-10  Matthias Clasen  <mclasen@redhat.com>
+2005-12-05  Manish Singh  <yosh@gimp.org>
 
-       * glib/gmessages.h (g_debug): Use G_LOG_LEVEL_DEBUG in
-       both definitions.  (#300071, Tommi Komulainen)
+       * tests/run-collate-test.sh: set LC_COLLATE, not LANG, to be sure
+       to override any user settings.
 
-2005-04-09  Tor Lillqvist  <tml@novell.com>
+2005-12-05  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gutils.c: Include <process.h> on Win32 for getpid(). (#173094)
+       * configure.in: Revert an accidential commit
 
-2005-04-08  Tor Lillqvist  <tml@novell.com>
+2005-12-05  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gstdio.h
-       * glib/gstdio.c
-       * glib/glib.symbols (g_access, g_chmod, g_creat): Wrap also
-       access(), chmod() and creat(). (#169623, #171285)
+       * glib/gutf8.c: Documentation updates.  (#323291, Morten Welinder)
 
-2005-04-08  Tor Lillqvist  <tml@novell.com>
+       * tests/Makefile.am (TESTS_ENVIRONMENT): 
+       * tests/gobject/Makefile.am (TESTS_ENVIRONMENT): Set
+       MALLOC_CHECK_ and MALLOC_PERTURB_
 
-       Improve g_get_system_data_dirs() on Windows. A library that calls
-       g_get_system_data_dirs() might be installed in a different
-       top-level prefix than GLib or the application being run.
+       * tests/run-collate-tests.sh: Run the collation tests explicitly 
+       in en_US locale. (#320463)
 
-       * glib/gutils.h (g_win32_get_system_data_dirs): New static
-       function defined in this header. Calls
-       g_win32_get_system_data_dirs_for_module() passing the address of
-       itself as parameter. g_get_system_data_dirs() is #defined as this
-       function.
+       * glib/gmem.h: Really deprecate GMemChunk.
 
-       * glib/gutils.c (g_win32_get_system_data_dirs_for_module): New
-       function. If the address parameter is non-NULL, the corresponding
-       module's installation location is used for one of the returned
-       path names, in addition to the COMMON_APPDATA, COMMON_DOCUMENTS,
-       glib top-level and application top-level folders.
-       (g_get_system_data_dirs): Now just for backward compatibility on
-       Win32. Just call g_win32_get_system_data_dirs_for_module(NULL).
+       * glib/gdate.c: 
+       * glib/gutils.c: 
+       * glib/gtree.c: 
+       * glib/gstring.c: 
+       * glib/giochannel.c: 
+       * glib/gstrfuncs.c: Add versioned deprecation docs. 
 
-       * glib/glib.symbols: Add g_win32_get_system_data_dirs_for_module.
+2005-12-05  Martyn Russell  <martyn@imendio.com>
 
-       * glib/gutils.c (read_aliases): Not used on Windows.
-       (unalias_lang): Don't do anything on Windows, there is no
-       /usr/share/locale/locale.alias file..
+       * 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).
        
-Thu Apr  7 22:51:15 2005  <yosh@gimp.org>
+       * tests/Makefile.am:
+       * tests/asyncqueue-test.c:
+       - Added test case for gasyncqueue.c
 
-       * glib/gutils.c (g_get_system_data_dirs): Declare glib_top_share_dir
-       and exe_top_share_dir only in G_OS_WIN32.
+Mon Dec  5 15:53:20 2005  Tim Janik  <timj@imendio.com>
 
-2005-04-08  Tor Lillqvist  <tml@novell.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/gutils.c (g_get_system_data_dirs): After investigating more
-       closely the actual use cases of this function, I understand better
-       what it needs to do on Windows. In addition to the Windows
-       COMMON_APPDATA and COMMON_DOCUMENTS folders, also return the
-       "share" subfolders of GLib's installation location and the
-       application .exe's installation location, hoping that either
-       matches what the function's caller is looking for.
+       * glib/gmain.c:
+       * glib/glist.c:
+       * glib/gslist.c:
+       * glib/glib.symbols: s/g_slice_free_chain/g_slice_free_chain_with_offset/
 
-       * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME): Use wide char API
-       if available, and store dll name in UTF-8.
+2005-12-05  Matthias Clasen  <mclasen@redhat.com>
 
-2005-04-05  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gasyncqueue.c: Add some docs.
 
-       * glib/gfileutils.c (get_contents_stdio): Avoid memory 
-       leaks in borderline cases.  (#172612, Morten Welinder)
+       * tests/libmoduletestplugin_a.c: Fix compiler warnings.
 
-2005-04-04  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gatomic.c: In the ia64 implementation, use
+       __sync builtin without _si or _di suffix.  (#321229,
+       Stanislav Brabec, patch by Andreas Schwab)
 
-       * glib/gconvert.c: Clarify docs in some places. (#172404, 
-       Morten Welinder)
+2005-12-04  Behdad Esfahbod  <behdad@gnome.org>
 
-2005-04-03  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gslice.h: Remove comma at the end of enum.
 
-       * glib/gutils.h: Undef G_CAN_INLINE if G_IMPLEMENT_INLINES is 
-       defined. This was the pre-2.6 behaviour, and without it,
-       G_IMPLEMENT_INLINES cannot be used in multiple .c files
-       at all.  (#165852, Dave Benson)
+2005-12-04  Matthias Clasen  <mclasen@redhat.com>
 
-2005-04-01  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().
 
-       * glib/gmain.c (g_child_watch_source_new): Add a note regarding
-       waitpid(-1).
-       (g_child_watch_source_init_multi_threaded): 
-       (g_child_watch_source_init_single): Don't use SA_RESTART,
-       since it causes problems on at least one platform. (#168352)
+2005-12-04  Matthias Clasen  <mclasen@redhat.com>
 
-2005-03-30  Steve Murphy  <murf@e-tools.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)
 
-       * configure.in: Added "rw" to ALL_LINGUAS.
+       * glib/gmem.h: Add the new attribute to g_realloc and 
+       g_try_realloc.
 
-2005-03-30  Sven Neumann  <sven@gimp.org>
+2005-12-03  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gfileutils.c (get_contents_stdio): handle the unlikely case
-       that no bytes are read from the file and allocate an empty string.
+       * glib/glib.symbols: 
+       * glib/gcache.h: Deprecate g_cache_value_foreach. (#322956,
+       Nicolas Caniart)
 
-2005-03-30  Tor Lillqvist  <tml@novell.com>
+       * 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)
 
-       * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Always claim
-       file descriptors open to devices are readable, since we can't
-       know. fstat() doesn't give any useful information. (#145326)
+2005-12-02  Matthias Clasen  <mclasen@redhat.com>
 
-2005-03-29  Tor Lillqvist  <tml@novell.com>
+       * README.in: Add a note about Solaris threads.
 
-       * glib/gmain.c (g_poll): [Win32] If the event fired, assign
-       f->revents=f->events. We can't know whether the upper layer using
-       the event actually is readable, writeable or what, so say that all
-       the conditions hold. Remove the ResetEvent() call that has been
-       ifdeffed out anyway for a long time. Remove an "#ifdef 1" and
-       #endif pair of lines, that code is not optional.
-       (g_get_current_time): [Win32] Use GetSystemTimeAsFileTime()
-       instead of time() and GetTickCount(). Much simpler.
+       * glib/gspawn.c:
+       * configure.in: Remove support for Solaris threads. 
+       (#136971, Sebastian Wilhelmi, patch by Andrew Paprocki)
 
-2005-03-28  Matthias Clasen  <mclasen@redhat.com>
+2005-12-02  Matthias Clasen  <mclasen@redhat.com>
 
-       * tests/date-test.c: 
-       * tests/testgdate.c: Add tests for 
-       g_date_get_iso8601_week_of_year().
+       * configure.in: Define G_GUINT64_CONSTANT in analogy to
+       G_GINT64_CONSTANT.  (#322568, Andrew Paprocki)
 
-       * glib/gdate.c (g_date_get_iso8601_week_of_year): 
-       Fix the calculation.  (#169858, Jon-Kare Hellan)
+2005-12-02  Matthias Clasen  <mclasen@redhat.com>
 
-2005-03-27  Tor Lillqvist  <tml@novell.com>
+       * glib/gslice.c: Win32 portability fixes and C99ism removal,
+       pointed out by Kazuki Iwamoto.  (#323052)
+       
+2005-12-02  Matthias Clasen  <mclasen@redhat.com>
 
-       * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
-       after all, and in fact necessary with HEAD libtool.
+       * glib/gatomic.c (g_atomic_int_add): Add a missing volatile for
+       the IA64 implementation.
 
-2005-03-23  Tor Lillqvist  <tml@novell.com>
+Fri Dec  2 16:18:09 2005  Tim Janik  <timj@imendio.com>
 
-       * glib/gutils.c (g_getenv): [Win32] Fix corner case bug when
-       environment variable value is exactly one character.
+       * glib/gslice.c: some naming and type size fixups.
 
-2005-03-21  Matthias Clasen  <mclasen@redhat.com>
+Fri Dec  2 13:08:58 2005  Tim Janik  <timj@gtk.org>
 
-       * glib/glib.symbols: Add g_try_malloc0
+       * glib/gslice.h (g_slice_free): reworked GCC-specific type-safe macro
+       variant into something less verbose, but digestible for gcc-3.4.
 
-       * glib/gmem.h: Add g_try_new, g_try_new0, g_try_renew and
-       g_try_malloc0.  (#169611, Stefan Kost)
+Fri Dec  2 10:55:07 2005  Tim Janik  <timj@imendio.com>
 
-       * glib/gmem.c: Implement g_try_malloc0.
+       * tests/slice-test.c: extended to perform the benchmarking on the old
+       memchunk code if 'O' is selected.
 
-2005-03-20  Tor Lillqvist  <tml@novell.com>
+       * tests/memchunks.c: new file which contains the old GLib mem chunks
+       implementation with prefix old_mem_chunk_.
 
-       * glib/gspawn-win32.c (do_spawn_with_pipes): Close the process
-       handle if the caller doesn't want it also in the case without a
-       helper process.
-       (g_spawn_sync): Don't ask for a child pid which we don't need.
+       * tests/Makefile.am: added memchunks.c
 
-       * glib/gtimer.c: On Win32, use GetSystemTimeAsFileTime() instead
-       of GetTickCount(). (#159507)
+Fri Dec  2 00:16:59 2005  Tim Janik  <timj@imendio.com>
 
-       * glib/gmessages.c (g_log_default_handler)
-       * glib/gutils.c (g_get_prgname): Move the Win32 code that asks the
-       program name from the system to g_get_prgname(). Do output the pid
-       also on Win32 (useful in case there are several instances of the
-       same program running).
+       * 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.
 
-       * tests/testglib.c (main): Print more detailled output from the
-       timer tests. Don't print home directory twice. Test
-       g_win32_error_message().
+2005-12-01  Matthias Clasen  <mclasen@redhat.com>
 
-       * tests/spawn-test.c (run_tests): On Win32, run netstat instead of
-       ipconfig. On Windows XP collecting output from ipconfig doesn't
-       seem to work for some reason.
+       * tests/gobject/ifacecheck.c (test_iface_base_init): Don't
+       double-free base interface members.
 
-2005-03-18  Hans Breuer  <hans@breuer.org>
+       * tests/Makefile.am: Remove duplicate variable.
 
-       * glib/makefile.msc.in : handle galiasdef.c (although completely 
-       useless for msvc build)
+Thu Dec  1 17:32:46 2005  Tim Janik  <timj@imendio.com>
 
-       * glib/gbacktrace.c glib/gmessage.c : need at least _WIN_VER 0x0401
-       for IsDebuggerPresent()
+       * glib/gslice.[hc]: new slice allocator implementation.
 
-2005-03-17  Matthias Clasen  <mclasen@redhat.com>
+       * tests/slice-test.c: added random slice allocation test.
 
-       * glib/gkeyfile.c: Update the documentation, reflecting the
-       fact that the special case for !group_name --> start_group
-       got removed.  (#170566, Tim-Philipp Müller)
+       * glib/gthread.[hc]: removed newly added private thread mem API.
 
-2005-03-15  Matthias Clasen  <mclasen@redhat.com>
+       * 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/goption.c (g_option_context_set_main_group): Warn 
-       if there already is a main group.  (#170445, Jeff Franks)
+       * glib/gmem.c: removed memchunk code, defer allocations to 
+       g_slice_* instead.
 
-Sun Mar 13 22:01:17 2005  Manish Singh  <yosh@gimp.org>
+       * glib/gmem.[hc]: removed g_slice_* skeletons.
 
-       * tests/array-test.c: delete a bunch of dead code.
+       * glib/glib.symbols: added g_slice_* symbols.
 
-Sun Mar 13 21:28:47 2005  Manish Singh  <yosh@gimp.org>
+       * configure.in: check for availability of posix_memalign(3), memalign(3)
+       and valloc(3). 
 
-       * glib/gdataset.c: remove spurious IA prefix from g_quark_try_string.
+       * glib/Makefile.am: added gslice.[hc].
 
-2005-03-13  Matthias Clasen  <mclasen@redhat.com>
+2005-12-01  Tor Lillqvist  <tml@novell.com>
 
-       * glib/gatomic.c:
-       * glib/gcache.c: Small fixes to the previous commit.
+       * 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-03-13  Matthias Clasen  <mclasen@redhat.com>
+2005-11-28  Matthias Clasen  <mclasen@redhat.com>
 
-       Make PLT-reduction work with gcc4, and don't include
-       everything in galias.h:
+       Fix G_STMT_START / G_STMT_END on Solaris.  (#321972,
+       Andrew Paprocki)
        
-       * glib/glib.symbols: Group symbols by header and source file.
-       * glib/makegalias.pl: Protect definitions by the same 
-       preprocessor symbols used to guard the headers. Move
-       the alias declarations to a separate file which is 
-       produced when calling makegalias.pl -def
-       * glib/Makefile.am (galiasdef.c): Add a rule to generate this
-       file.
-       * glib/*.c: Include galias.h after the other GLib headers,
-       include galiasdef.c at the bottom.
-
-       * glib/glib.symbols: Add g_listenv and g_file_replace.
-
-Fri Mar 11 23:51:12 2005  Soeren Sandmann  <sandmann@redhat.com>
-
-       * glib/gfileutils.c (write_to_temp_file): Don't try and generate
-       a dotfile from the name -- it doesn't work with absolute
-       paths. Also make documentation indicate that symlinks will be
-       overwritten. Both pointed out by Alexis S. L. Carvalho.
-
-2005-03-11  Matthias Clasen  <mclasen@redhat.com>
-
-       * m4macros/glib-gettext.m4: Avoid stupid compiler complaints
-       about precision loss.
-
-2005-03-10  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gdate.c: Remove a lot of pointless g_return_if_fail()
-       checks.  (#169859, Morten Welinder)
-
-2005-03-10  Sven Neumann  <sven@gimp.org>
-
-       * tests/file-test.c: include <gstdio.h>.
-
-2005-03-10  Sven Neumann  <sven@gimp.org>
+       * configure.in: Check whether do { } while (0) works.
 
-       * glib/gfileutils.c (get_contents_stdio): delay memory allocation
-       until after the first read. Saves a bunch of reallocs. Also
-       increased the buffer size to 4096 bytes. (bug #165954)
+       * 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>
 
-       * tests/file-test.c (test_get_contents): added a (very basic) test
-       for g_file_get_contents().
+       * 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.
 
-Wed Mar  9 19:06:45 2005  Manish Singh  <yosh@gimp.org>
+2005-11-27  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/glib.symbols: Add g_file_replace.
+       * glib/gunicollate.c (g_utf8_collate_key_for_filename): 
+       Don't read beyond len.  (#322520, Christian Persch)
 
-2005-03-09  Matthias Clasen  <mclasen@redhat.com>
+Wed Nov 23 17:34:01 2005  Tim Janik  <timj@imendio.com>
 
-       * configure.in: Bump version
+       * 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.
 
-2005-03-09  Sven Neumann  <sven@gimp.org>
+Wed Nov 23 13:35:31 2005  Tim Janik  <timj@gtk.org>
 
-       * glib/gfileutils.c (g_file_replace): avoid unnecessary filename
-       conversions.
+       * glib/gdataset.c: streamlined initialization code somewhat,
+       removed GData node cache.
 
-2005-03-09  Tor Lillqvist  <tml@novell.com>
+2005-11-22  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gutils.c (g_get_user_data_dir, g_get_user_config_dir,
-       g_get_user_cache_dir, g_get_system_data_dirs,
-       g_get_system_config_dirs): [Win32] Don't leak return value from
-       get_special_folder(). (#169348, Daniel Atallah) Guard against
-       g_home_dir being NULL, use g_tmp_dir/g_user_name in that case.
+       * glib/ghash.c (g_hash_table_ref): 
+       (g_hash_table_unref): Mark these as new API.
 
-Tue Mar  8 15:46:54 2005  Søren Sandmann  <sandmann@redhat.com>
+       Avoid double locking in g_intern_string (#322133,
+       Benedikt Meurer)
 
-       * glib/gfileutils.c (g_file_replace): New API. A function to
-       atomically create a file.
+       * 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.
 
-2005-03-08  Matthias Clasen  <mclasen@redhat.com>
+Tue Nov 22 14:04:26 2005  Tim Janik  <timj@imendio.com>
 
-       * glib/glib.symbols: Add the new attributes here too.
+       * 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/gmacros.h: Define G_GNUC_NULL_TERMINATED.
-       (#164706, Marc Meissner)
+       * glib/gatomic.h: 
+       * glib/gatomic.c: added 'volatile' qualifier to all atomic pointer and
+       integer pointers.
 
-       * glib/gstrfuncs.h: 
-       * glib/gfileutils.h: Use G_GNUC_NULL_TERMINATED where
-       appropriate.
+2005-11-20  Behdad Esfahbod  <behdad@gnome.org>
 
-       * glib/goption.c (parse_int): Fix an error message.  
-       (#168751, Hazael Maldonado Torres)
+       * glib/guniprop.c (g_unichar_get_mirror_char): Remove unused
+       variables. (#321984, Andrew Paprocki)
 
-2005-03-07  Matthias Clasen  <mclasen@redhat.com>
+2005-11-18  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gdebug.h: Small cleanup (use G_BEGIN/END_DECLS).
-       (#168474, Fabricio Barros Cabral)
+       * configure.in: Bump version
 
-2005-03-07  Matthias Clasen  <mclasen@redhat.com>
+2005-11-17  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gutils.c (g_find_program_in_path): Mark the last
-       paragraph of the docs as Windows-specific.  (#169433)
+       * === Released 2.9.0 ===
 
-2005-03-06  Matthias Clasen  <mclasen@redhat.com>
+       * glib/glib.symbols: Updates
 
-       * glib/gmarkup.c: Add G_GNUC_PRINTF attribute
-       to set_error.
-       (g_markup_parse_context_end_parse): Fix an
-       error message, noticed by Tim Janik.
+       * glib/gutf8.c (g_utf8_offset_to_pointer): Add some performance
+       hints to the docs. (Paolo Borelli)
+       
+       * NEWS: Updates
 
-2005-02-24  Tor Lillqvist  <tml@novell.com>
+       * glib/gthread.c (g_thread_foreach): Mark as new api.
 
-       * glib/Makefile.am (BUILT_EXTRA_DIST): Don't distribute
-       glib.def. (#167496, J. Ali Harlow)
+       * README.in: Updates.
 
-       * glib/gfileutils.c (get_contents_win32): Use g_fopen(). (#168341,
-       Daniel Atallah)
+       * 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>
 
-2005-02-23  Matthias Clasen  <mclasen@redhat.com>
+       * docs/reference/glib/tmpl/unicode.sgml: Correct typo on mentioning
+       @G_UNICODE_BREAK_UNKNOWN that should be #G_UNICODE_BREAK_UNKNOWN.
 
-       * configure.in: Don't forget to set G_THREAD_LIBS_FOR_GTHREAD 
-       on non-linux platforms.  (#168177, Michael Banck)
+2005-11-09  Behdad Esfahbod  <behdad@gnome.org>
 
-       * tests/keyfile-test.c (test_locale_string): Set LANGUAGE 
-       instead of LC_ALL to shield against LANGUAGE being set in 
-       the environment.  (#168311, Suren A. Chilingaryan)
+       * glib/guniprop.c: Use bit hacks instead when checking a general
+       category value against multiple values.
 
-Tue Feb 22 22:03:38 2005  Manish Singh  <yosh@gimp.org>
+       * glib/gutf8.c: Change ISO10646 to Unicode in docs.
 
-       * glib/gstdio.h: On G_OS_UNIX, simple #define g_open and co. as
-       aliases for their respective C library functions, instead of
-       using the function wrappers. This avoids library users having to
-       care about matching large file support with whatever glib has been
-       built with. Fixes bug #167942.
+2005-11-10  Simos Xenitellis  <simos@gnome.org>
 
-       * glib/gstdio.c
-       * glib/abicheck.sh
-       * glib/glib.symbols
-       * glib/makegalias.pl: Logic to make the gstdio wrappers still
-       available for compatibility, but not used in new code.
+       * configure.in: Added tt (Tatar) to ALL_LINGUAS.
 
-Tue Feb 22 18:33:07 2005  Manish Singh  <yosh@gimp.org>
+2005-11-05  Tor Lillqvist  <tml@novell.com>
 
-       * glib/gtimer.c (g_usleep): Simplify the loop for the fix below.
+       * glib/giowin32.c (g_io_win32_set_flags): Don't call g_warning().
+       (#320688) Instead set error and return failure.
 
-2005-02-20  Matthias Clasen  <mclasen@redhat.com>
+2005-11-07  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gqueue.c (g_queue_new): Use a memchunk for
-       sizeof(GQueue)-sized chunks.  (#167984, Fabrício Barros Cabral)
+       * glib/gmain.c (g_main_dispatch): Don't call cb_funcs->unref
+       while holding the context lock.  (#320886, Andy Wingo)
 
-       * glib/gtimer.c (g_usleep): Fix usage of 
-       nanosleep().  (#163039, Bastien Nocera)
+2005-11-07  Billy Biggs <vektor@dumbterm.net>
 
-2005-02-16  Adi Attar  <aattar@cvs.gnome.org>
+       * tests/refcount/Makefile.am: Add a missing reference to libglib
+       in the LDADD for this test.
 
-       * configure.in: Added "xh" to ALL_LINGUAS.
+2005-11-07  Matthias Clasen  <mclasen@redhat.com>
 
-2005-02-11  Tor Lillqvist  <tml@novell.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)
 
-       * glib/giowin32.c: Include winsock2.h before windows.h, to avoid
-       compilation errors with MSVC. (#167105)
+2005-11-04  Matthias Clasen  <mclasen@redhat.com>
 
-2005-02-10  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/goption.c (print_help): Take main group options into
-       account when calculating column size.  (#166921)
-       (g_option_context_parse): Accept -? as documented.  (#166977)
+       * glib/glist.c: Avoid some code duplication.
 
-2005-02-09  Matthias Clasen  <mclasen@redhat.com>
-       * glib/gkeyfile.c (find_file_in_data_dirs): Don't leak path
-       here.  (#166801, Kjartan Maraas)
+       * glib/gscanner.h: Include gdataset.h.  (#320322)
 
-2005-02-08  Matthias Clasen  <mclasen@redhat.com>
+       * 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)
 
-       * glib/gkeyfile.c (g_key_file_parse_value_as_string): Don't
-       write out of bounds.
+2005-11-02  Tor Lillqvist  <tml@novell.com>
 
-       * glib/goption.c (g_option_context_parse): Fix a 
-       one-too-short memory allocation.  (#166609, Nicolas Laurent)
+       * 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.
 
-       * tests/Makefile.am (TESTS_ENVIRONMENT): Add tests with
-       MALLOC_CHECK_.
+Tue Nov  1 16:24:20 2005  Tim Janik  <timj@imendio.com>
 
-       * tests/option-test.c: Add a test for unkown short options.
+       * 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.
 
-2005-02-07  Matthias Clasen  <mclasen@redhat.com>
+       * 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/glib.symbols: 
-       * glib/gutils.h: 
-       * glib/gutils.c (g_listenv): New function to list all 
-       environment variables.  (#166327, Hans Petter Jansson)
+       * glib/gthread.[hc]:
+       g_thread_foreach(): new public API function to loop over all existing threads.
 
-2005-02-07  Tor Lillqvist  <tml@novell.com>
+       * 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-zip.in: Add gmodule-no-export-2.0.pc.
+       * glib/ghook.h: removed GMemChunk field from public API.
 
-Sun Feb  6 21:59:09 2005  Manish Singh  <yosh@gimp.org>
+       * glib/gslist.h:
+       * glib/glist.h: deprecate allocator API, provide _free1() for consistency.
 
-       * glib/abicheck.sh: feed the contents of config.h and glibconfig.h
-       into the preprocessor, since glib.symbols could need #defines
-       from them.
+       * glib/gnode.h: deprecate allocator API.
 
-Sun Feb  6 12:09:55 2005  Manish Singh  <yosh@gimp.org>
+       * glib/gmain.c: reordered GPollRec fields so g_slice_free_chain() can
+       be used for poll rec lists.
 
-       * glib/gatomic.c: Don't use matching constraints for asm mem
-       parameters. This makes the code match with current glibc, and
-       quiets some warnings with gcc 3.4.
+       * 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-02-05  Tor Lillqvist  <tml@novell.com>
+2005-10-29  Matthias Clasen  <mclasen@redhat.com>
 
-       * configure.in (G_LIBS_EXTRA)
-       * glib/giowin32.c: I think we can include <winsock2.h> and link
-       with -lws2_32. Only Windows 95 originally didn't have Winsock 2,
-       and it's available as an update for it. Not that we use any actual
-       Winsock 2 -only features, but still, simpler to link directly with
-       ws2_32.dll instead of going through wsock32.dll.
+       * tests/convert-test.c: Add some tests for conversions between
+       UTF-8, UCS-4 and UTF-16.
 
-       * glib/gfileutils.c (g_file_get_contents): In the Win32 ABI
-       stability version, call g_file_get_contents_utf8(), not
-       itself. (#166386, Bill Skaggs)
+       * glib/gutf8.c (g_utf8_to_ucs4, g_utf8_to_utf16): Fix handling
+       of len == -1, noticed by Morten Welinder.
 
-2005-02-04  Matthias Clasen  <mclasen@redhat.com>
+2005-10-27  Erdal Ronahi  <erdal.ronahi@gmail.com>
 
-       * configure.in: Remove the --enable-ansi option  (#160469)
+       * configure.in: Added ku (Kurdish) to ALL_LINGUAS
 
-       * configure.in: Define a HAVE_GNUC_VISIBILITY automake
-       conditional.
+2005-10-26  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/Makefile.am (TESTS): Only check the abi if
-       the compiler supports visibility, otherwise we
-       know there will be (harmless) extra symbols.  
-       (#166181, Ed Avis)
+       * 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-02-02  Tor Lillqvist  <tml@novell.com>
+2005-10-19  Manish Singh  <yosh@gimp.org>
 
-       * glib/gwin32.h: Remove unnecessary MSVC-only typedef for
-       pid_t. (#165910) GLib does not pretend to be a POSIX emulation
-       library.
+       * configure.in: Use AC_CHECK_FUNCS for _NSGetEnviron, to get the
+       config.h symbol automatically. Fixes bug #313731.
 
-       * glib/gstdio.c: In the Win32 part of all functions, handle
-       invalid UTF-8 more robustly. Don't pass the resulting NULL
-       wide-char or codepage strings on to C library functions, but bail
-       out early. (#166084)
+2005-10-19  Tor Lillqvist  <tml@novell.com>
 
-       * glib/gfileutils.c: Don't use potentially incorrect errno in
-       several places. (#165951)
-       (g_mkstemp): Set errno appropriately.
+       * 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-02-02  Matthias Clasen  <mclasen@redhat.com>
+2005-10-06  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gutils.c: Move doc comments inline.
+       * glib/gunicollate.c (g_utf8_collate_key_for_filename): Handle
+       all-zero sequences correctly.  (#317930, Sebastien Bacher)
 
-       * glib/ghash.h: Adjust some argument names.
+2005-10-05  Matthias Clasen  <mclasen@redhat.com>
 
-       * configure.in: Give meaningful names to g_memmove() 
-       arguments.
+       * glib/gmarkup.c (g_markup_escape_text): Doc addition
 
-2005-02-01  Matthias Clasen  <mclasen@redhat.com>
+       * Makefile.am: Add Collation tests.
 
-       * tests/keyfile-test.c (test_key_remove): Add test case for
-       key removal.
+       * tests/collate/*: Inputs and expected outputs for collation tests.
 
-       * glib/gkeyfile.c (g_key_file_remove_key): Actually remove 
-       the key from the list of pairs.  (#165980, David Hoover)
+       * tests/run-collate-tests.sh: Script to run collation tests.
 
-       * glib/gkeyfile.c: Doc clarifications.  (#165907, Vincent Untz)
+       * tests/unicode-collate.c (main): Rework slightly to make
+       it usable in unit tests. Also test g_utf8_collate_key_for_filename().
 
-       * tests/keyfile-test.c (test_group_remove): Add test case for
-       group removal.
+2005-10-01  Behdad Esfahbod  <behdad@gnome.org>
 
-       * glib/gkeyfile.c (g_key_file_remove_group): Don't segfault
-       if the group doesn't exist.  (#165887, Mathias Hasselmann)
+       * 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-01-30  Matthias Clasen  <mclasen@redhat.com>
+2005-09-26  Matthias Clasen  <mclasen@redhat.com>
 
-       * tests/keyfile-test.c: Some more unit tests.
+       * glib/gstrfuncs.c (g_ascii_strtoull): Add details to the 
+       docs.  (#314393, Matthew F. Barnes)
 
-2005-01-28  Christian Rose  <menthos@menthos.com>
+       * 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)
 
-       * configure.in: Added "tl" to ALL_LINGUAS.
+Tue Sep 20 13:16:04 2005  Tim Janik  <timj@imendio.com>
 
-2005-01-24  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gpattern.c (g_pattern_ph_match): applied significant recursion
+       complexity optimization, based on a patch from Matthias Clasen.
 
-       * tests/run-markup-tests.sh: Let $srcdir default to .
+       * tests/patterntest.c: more tests, mostly from matthias.
 
-       * tests/markups/fail-40.gmarkup: Add a test with a long entity
-       name.
+2005-09-20  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gmarkup.c (unescape_text_state_inside_entity_name): Don't
-       copy the entity name into a short buffer of fixed length. Instead,
-       compare it in place with strncmp(), and do a full strdup() in the
-       error path.  (#165100, Simon Budig)
+       * glib/gqueue.c (g_queue_insert_sorted): Correct the docs.
+       (#316703, Mark Drago)
 
-2005-01-22  Tor Lillqvist  <tml@novell.com>
+Mon Sep 19 17:23:23 2005  Tim Janik  <timj@imendio.com>
 
-       * glib/gdate.c (g_date_set_time): Don't g_assert that localtime()
-       returns non-NULL. It does return NULL at least on Win32 if you
-       pass it a negative time_t, which although wrong, shouldn't cause
-       an application to abort. Instead return 2000-01-01 as a default
-       date. Print a warning unless G_DISABLE_CHECKS. (#164622)
+       * glib/gpattern.c: applied a patch from matthias which checks on the
+       upper bound of GPatternSpec length to optimize matches.
+       cosmetic fixups.
 
-2005-01-20  Matthias Clasen  <mclasen@redhat.com>
+       * tests/patterntest.c: added more match cases.
 
-       * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Don't
-       interpret leading zeros as octal. The specification requires
-       %f parsing, and %f doesn't allow octal.  
+2005-09-16  Tor Lillqvist  <tml@novell.com>
 
-       * tests/keyfile-test.c: Add some more tests.
+       * 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.
 
-       * glib/gkeyfile.c (g_key_file_get_keys): Return keys in
-       the order found in the file, rather than the opposite.
-       (g_key_file_parse_value_as_string): Fix error reporting.
+2005-09-14  Matthias Clasen  <mclasen@redhat.com>
 
-2005-01-19  Matthias Clasen  <mclasen@redhat.com>
+       * tests/keyfile-test.c: Add a test for grup names of length 1.
 
-       * glib/gkeyfile.c (g_key_file_parse_data): Accept \r\n as 
-       line end.  (#163030, Bastian Nocera)
-       (g_key_file_load_from_data): Make -1 work as a size.
+       * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
+       of length 1.  (#316309)
        
-       * tests/keyfile-test.c: Some unit tests for the keyfile
-       parser.  
-
-       * tests/Makefile.am (test_programs): Add keyfile-test.
-
-2005-01-19  Tor Lillqvist  <tml@novell.com>
-
-       * glib/gbacktrace.c (g_on_error_stack_trace): On Win32 call
-       G_BREAKPOINT() if being debugged.
-
-       * glib/gmessages.c (g_logv): For fatal messages on Win32, use
-       G_BREAKPOINT() also without G_ENABLE_DEBUG, but only if being
-       debugged. Suggestion by Ulf Lamping.
-
-2005-01-18  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gqsort.c: Don't include alloca.h. It is not needed,
-       and does not exist on win32.  (#164468, Kazuki IWAMOTO)
-
-       * glib/gkeyfile.c (g_key_file_get_boolean_list): Fix a
-       sparse warning.  (#164467, Kjartan Maraas)
-
-2005-01-17  Matthias Clasen  <mclasen@redhat.com>
-
-       * glib/gconvert.c (g_get_filename_charsets): Don't crash
-       if G_FILENAME_ENCODING is empty.  (#164330, Pawel Sakowski)
-
-2005-01-15  Tor Lillqvist  <tlillqvist@novell.com>
-
-       * configure.in: sh portability fix. Use "test" and not [.
-       (#163144, Robert Ögren)
+2005-09-12  Matthias Clasen  <mclasen@redhat.com>
 
-2005-01-13  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
 
-       * glib/gqsort.c: Sync to glibc.  (#133994, Morten Welinder, 
-       patch by Kjartan Maraas)
+2005-09-11  Sebastian Wilhelmi  <seppi@seppi.de>
 
-2005-01-11  Owen Taylor <otaylor@redhat.com>
+       * tests/refcount/Makefile.am (INCLUDES): Link the the refcount
+       tests to the system thread library $(G_THREAD_LIBS). Fixes #313744
+       and #314217.
 
-       * configure.in: Add gmodule-export-2.0.pc to AC_CONFIG_FILES.
+2005-09-11  Kjartan Maraas  <kmaraas@gnome.org>
 
-       * glib/Makefile.am gobject/Makefile.am gthread/Makefile.am:
-       Use grep | head -n 1 instead of grep -m 1 which doesn't work
-       with slightly older versions of GNU grep in 
-       install-libtool-import-lib rule.
+       * glib/gmain.c: (g_child_watch_prepare), (g_child_watch_check),
+       (child_watch_helper_thread): Remove some dead code. Closes
+       bug #315278.
 
-2005-01-11  Matthias Clasen  <mclasen@redhat.com>
+2005-09-07  Tor Lillqvist  <tml@novell.com>
 
-       * glib/gdir.c (g_dir_open): Typo fix.
-
-2005-01-10  Owen Taylor  <otaylor@redhat.com>
-
-       * Makefile.am (EXTRA_DIST): Add missing ChangeLog.pre*
-
-2005-01-09  Hans Breuer  <hans@breuer.org>
-
-       * glib/gfileutils.c : make it compile with mvc6 default sdk,
-       (#define INVALID_FILE_ATTRIBUTES, FILE_ATTRIBUTE_DEVICE)
-
-2005-01-09  Tor Lillqvist  <tlillqvist@novell.com>
-
-       * glib/gwin32.c: Include also wchar.h for wcslen on
-       Cygwin.
-       (g_win32_error_message): Fix cast. (#163133, Roger Leigh)
-
-       * glib/gfileutils.c: Include <io.h> on Windows for
-       prototypes. (#163390, Kazuki Iwamoto)
+       * 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.
 
-2005-01-07  Matthias Clasen  <mclasen@redhat.com>
+       (g_spawn_sync_utf8, g_spawn_async_with_pipes_utf8): Modify calls
+       to do_spawn_with_pipes() accordingly.
 
-       * NEWS: Typo fixes.
+       (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).
 
-       * configure.in: Bump version
+       * glib-zip.in: Distribute also gspawn-win32-helper-console.exe.
 
-       * === Released 2.6.1 ===
+2005-09-05  Matthias Clasen  <mclasen@redhat.com>
 
-2005-01-07  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gmappedfile.c (g_mapped_file_new): Report an error
+       if the file is too large.  (#315275, Kjartan Maraas)
 
-       * configure.in: 
-       * Makefile.am: Generate and distribute gmodule-export-2.0.pc,
-       which is currently just a copy of gmodule-2.0.pc, but makes
-       it explicit that it adds --export-dynamic.
+       * glib/gkeyfile.c (g_key_file_load_from_fd): The return value
+       of read() is signed.  (#315273, Kjartan Maraas)
        
-       * gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
-
-2005-01-06  Tor Lillqvist  <tml@iki.fi>
-
-       * glib/Makefile.am
-       * gobject/Makefile.am: glib.def and gobject.def are generated, not
-       in $(srcdir). (#163143, J. Ali Harlow)
+2005-08-31  Tor Lillqvist  <tml@novell.com>
 
-       * configure.in
-       * glib/Makefile.am
-       * gobject/Makefile.am: Win32 cross-compilation fixes. (#163144,
-       J. Ali Harlow)
+       * glib/gutils.h: Wrapping atexit() is a bad idea on Windows, where
+       the EXE and each DLL have their own atexit function chains.
 
-2005-01-05  Matthias Clasen  <mclasen@redhat.com>
+       #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.h: Simplify the inlining magic to make it
-       work at Oh zero.  (#162990, Kalpesh Shah) 
+       * 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-01-04  Tor Lillqvist  <tml@iki.fi>
+2005-08-31  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
-       instead of setlocale() on Windows. setlocale() returns strings
-       like "Turkish_Turkey".
+       * glib/glib.symbols: 
+       * glib/gquark.h: 
+       * glib/gdataset.c: Add string interning functions.
 
-2005-01-04  Matthias Clasen  <mclasen@redhat.com>
+2005-08-28  Matthias Clasen  <mclasen@redhat.com>
 
-       Fix the inlining magic.  (#157536, Jens Hatlak, and
-       #149907, Morten Welinder)
+       * glib/giochannel.c: Unify some near-duplicate strings. (#314654,
+       Clytie Siddall)
        
-       * configure.in: Define G_CAN_INLINE in glibconfig.h
-
-       * glib/gutils.h: Streamline the inlining magic a bit,
-       don't use extern when implementing the non-inlined 
-       version.
-
-2005-01-03  Matthias Clasen  <mclasen@redhat.com>
+2005-08-26  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gutils.c (g_find_program_in_path): Don't return
-       directories.  (#160738, Tommi Komulainen)
+       * configure.in: Bump version to 2.9.0
 
-       * glib/gfileutils.c (g_file_get_contents): Clarify the 
-       documentation.  (#162251, Mariano Suárez-Alvarez)
+2005-08-25  Tor Lillqvist  <tml@novell.com>
 
-2005-01-02  Matthias Clasen  <mclasen@redhat.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/gutils.c (g_setenv, g_unsetenv): Clarify the 
-       docs.  (#162747, Crispin Flowerday)
+       * 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.)
 
-2005-01-01  J. Ali Harlow  <ali@juiblex.co.uk>
+       * glib/gspawn.c: Corresponding documentation updates.
 
-       * configure.in: Don't use AC_TRY_RUN to test for long long format
-       when using the MSVCRT.DLL runtime since we know the answer anyway
-       and it causes some mild inconvience when cross compiling.
+       * glib/glib.symbols: Corresponding changes: Mark the ABI stability
+       symbols as PRIVATE, add the new _utf8-suffixed ones.
 
-       * README.win32: Add a reference to the cross compiling section
-       of the reference manual.
+2005-08-24  Stepan Kasal  <kasal@ucw.cz>
 
-       * docs/reference/glib/cross.sgml: MinGW uses MSVCRT.DLL which
-       requires %I64i instead of %lli. (#161306)
+       * 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-01-01  Tor Lillqvist  <tml@iki.fi>
+2005-08-23  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/gutils.c: Make the g_getenv() ABI backward compatibility
-       wrapper more robust.
+       * glib/gutils.c: Fix the crt_externs.h include.
 
-2005-01-01  Tor Lillqvist  <tml@iki.fi>
+2005-08-23  Stepan Kasal  <kasal@ucw.cz>
 
-       * glib/glib.symbols
-       * glib/gutils.h
-       * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
-       and g_find_program_in_path() take and return UTF-8 strings on
-       Win32. Implement DLL ABI backward compatility for them, too. Move
-       all the DLL ABI stability wrappers to the end of the file. Use
-       wide character API when available in inner_find_program_in_path().
+       * NEWS: Fix spelling of my first name.
 
-       * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
-       use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
-       to consider somebody actually having anything else than ASCII
-       in PATHEXT, but...)
+2005-08-23  Matthias Clasen  <mclasen@redhat.com>
 
-2004-12-31  Tor Lillqvist  <tml@iki.fi>
-
-       * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
-       use GetFileAttributes() instead of stat(). stat() is unreliable
-       for corner cases like '\\server\share' or '.\'. Part of fixing
-       #161797. When testing for executability, in addition to the fixed
-       set of executable file name extensions also check the PATHEXT
-       environment variable.
+       * Bump version
 
-2004-12-30  Tor Lillqvist  <tml@iki.fi>
+       * === Released 2.8.1 ===
 
-       * glib/gutils.c (g_get_current_dir): In the Win32 version, use
-       GetCurrentDirectory() directly for simpler buffer length
-       management. I don't trust getcwd() getting it right all the time.
+       * NEWS: Updates
 
-2004-12-30  Matthias Clasen  <mclasen@redhat.com>
+2005-08-20  Hans Breuer  <hans@breuer.org>
 
-       * glib/gfileutils.c (g_file_test): Typo fix.
+       * glib/makefile.msc.in : link with ws2_32.lib
 
-2004-12-30  Tor Lillqvist  <tml@iki.fi>
+2005-08-18  Tor Lillqvist  <tml@novell.com>
 
-       * glib/gutils.c (g_path_skip_root): Require UNC paths to start
-       with exactly two slashes.
-       (g_get_current_dir): Use wide character API when available.
-       (g_path_get_dirname): Handle UNC paths better. Part of fix for
-       #161797.
+       * configure.in: Check for <sys/wait.h>
 
-2004-12-27  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gbacktrace.c: Include <sys/wait.h> on if HAVE_SYS_WAIT_H.
 
-       * configure.in: Add an OS_LINUX conditional.
+2005-08-18  Ross Burton  <ross@burtonini.com>
 
-       * glib/Makefile.am (TESTS): Only check the ABI on 
-       linux, since the shell script is not portable, and libtool
-       deficiencies may distort the ABI on other platforms.  (#161741)
+       * 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.
 
-2004-12-21  Matthias Clasen  <mclasen@redhat.com>
+2005-08-17  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/goption.c (print_entry): Don't show
-       the special G_OPTION_REMAINING entry.  (#161934,
-       Matthew F. Barnes)
+       * configure.in: Check for crt_externs.h and _NSGetEnviron.
 
-2004-12-20  Tor Lillqvist  <tml@iki.fi>
+       * glib/gutils.c: On Darwin, include crt-externs.h and
+       define environ using _NSGetEnviron().  (#313731)
 
-       * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
-       docs.
+2005-08-16  Stepan Kasal  <kasal@ucw.cz>
 
-2004-12-20  Matthias Clasen  <mclasen@redhat.com>
+       * 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.
 
-       * tests/option-test.c: Add some tests for '--' 
-       stripping.
+2005-08-15  Matthias Clasen  <mclasen@redhat.com>
 
-       * glib/goption.c (g_option_context_parse): Don't
-       strip '--' if it would be needed by a second option
-       parser.  (#161701)
+       * 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/gunicollate.c (g_utf8_collate): Make docs 
-       more accurate.  (#161683, Marcin Krzyzanowski)
+       * glib/gunicode.h: Update the link to Unicode category
+       values.  (#313369, Behnam Esfahbod)
 
-2004-12-19  Matthias Clasen  <mclasen@redhat.com>
+       * glib/gqueue.c (g_queue_find_custom): Clarify docs
+       a little.  (#311727, Tristan van Berkom)
 
-       * glib/goption.c (g_option_context_parse): Call
-       post-parse hooks also if argv is NULL.  (#161668,
-       Marcin Krzyzanowski)
+       * glib/abicheck.sh, gobject/abicheck.sh: Make the 
+       check work on ia64 too, where some symbols ended up 
+       in yet another section.