2006-05-02  Matthias Clasen  <mclasen@redhat.com>
	
	* === Released 2.11.0 ===

	* NEWS: Updates

	* tests/casemap.txt: 
	* tests/casefold.txt: Regenerate from Unicode 5.0 data. 

Tue May  2 15:00:00 2006  Tim Janik  <timj@gtk.org>

	* glib/guniprop.c: Make interval_compare static.

	* tests/gobject/deftype.c: added test code from Behdad Esfahbod, 
	see #337128.

Tue May  2 14:18:25 2006  Tim Janik  <timj@gtk.org>

	* glib/goption.c (g_option_context_parse): fixed leak in short
	option parsing. rewrote parts of the code to be more concise to
	enhance readability. fixed exaggerated uses of strlen.

2006-04-28  Behdad Esfahbod  <behdad@gnome.org>

	* glib/guniprop.c: #include <stdlib.h>

2006-04-27  Matthias Clasen  <mclasen@redhat.com>

	* glib/glib.symbols: Add g_unichar_iswide_cjk.
	* glib/guniprop.c: Add a "Since: 2.12".

	* NEWS: Updates

2006-04-27  Behdad Esfahbod  <behdad@gnome.org>

	* docs/reference/glib/glib-sections.txt,
	* glib/gunicode.h glib/guniprop.c: Implement g_unichar_iswide_cjk().
	(#105626)

2006-04-27  Matthias Clasen  <mclasen@redhat.com>

	* glib/gbookmarkfile.c (g_bookmark_file_set_description) 
	(g_bookmark_file_set_title, g_bookmark_file_set_icon): 
	Remove some special-casing of empty string which led to 
	dangling pointers.  (#339337, Morten Welinder)
	(expand_exec_line): Don't use printf() needlessly, handle
	trailing '%' gracefully.  (#339338, Morten Welinder)
	(is_element_full): Silence the compiler.
	(g_bookmark_file_dump, bookmark_metadata_dump): 
	(bookmark_app_info_dump): Escape strings before dumping 
	them in xml.  (#339340, Morten Welinder)

2006-04-27  Behdad Esfahbod  <behdad@gnome.org>

	* glib/gunibreak.h, glib/gunichartables.h: Regenerated using
	Unicode Character Database 5.0 beta.

2006-04-26  Matthias Clasen  <mclasen@redhat.com>

	* glib/grand.c (g_rand_new): Don't repeat a failed fclose()
	call, since that invokes undefined behaviour.  (Coverity)

2006-04-25  Matthias Clasen  <mclasen@redhat.com>

	* glib/gbookmarkfile.c (is_element_full): Avoid a possible
	NULL dereference (found by Coverity), also avoid some 
	pointless strdups.

	* tests/keyfile-test.c (test_comments): Add a test for
	the previous change.

	* glib/gkeyfile.c (g_key_file_lookup_group_node): Remove
	redundant code.
	(g_key_file_get_group_comment): Don't dereference before
	checking for NULL.  (#338572, Coverity, Pascal Terjan)

2006-04-19  Matthias Clasen  <mclasen@redhat.com>

	* glib/gdataset.c: Add some missing Since: 2.8 tags.

2006-04-19  Tor Lillqvist  <tml@novell.com>

	* glib/gatomic.c: Adapt to the changed prototype of
	InterlockedCompareExchange() in newer SDKs. Use
	InterlockedCompareExchangePointer() when applicable. (#155884,
	John Ehresman)

2006-04-18  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.h:
	* glib/glib.symbols:
	* glib/gkeyfile.c: Add api to get and set doubles and 
	lists of doubles.  (#164719, Maurizio Monge, Dom Lachowicz)

	* tests/keyfile-test.c: Add tests for new api.

	* glib/gkeyfile.c (g_key_file_add_group): Accept duplicate
	groups.  (#157877, Sebastien Bacher)

	* tests/keyfile-test.c: Add tests for duplicate key and
	duplicate group handling.

2006-04-17  Matthias Clasen  <mclasen@redhat.com>

	* glib/gcompletion.c (g_completion_complete_utf8): Make passing
	NULL for new_prefix work as documented.  (#338845, Yevgen Muntyan)

	* tests/completion-test.c: Test that passing NULL for 
	new_prefix in g_completion_complete_utf8 works.

2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>

	* configure.in: Remove obsolete entry for no_NO.
	* po/no.po: And the translation.

2006-04-16  Matthias Clasen  <mclasen@redhat.com>

	* glib/gdate.c (g_date_fill_parse_tokens): Avoid an array
	overrun.  (Coverity, fix by Pascal Terjan)

2006-04-12  Bastien Nocera  <hadess@hadess.net>

	reviewed by: Matthias Clasen <mclasen@redhat.com>

	* glib/gconvert.c: add more details about which RFC is concerned
	when using g_filename_to_uri (#337553)

2006-04-12  Matthias Clasen  <mclasen@redhat.com>

	* glib/goption.c (parse_arg): Add an assert to make it
	clear when value can be NULL.

2006-04-07  Martyn Russell  <martyn@imendio.com>

	* tests/threadpool-test.c: (test_thread_stop_unused): Removed an
	assertion which can fail and is not a critical test.

2006-04-07  Hans Breuer  <hans@breuer.org>

	* glib/makefile.msc.in : added gbase64.obj and derive the static libs
	name from auto* variables
	* glib/makefile.msc.in : link user32.lib for MessageBox()

2006-04-07  Martyn Russell  <martyn@imendio.com>

	* glib/gasyncqueue.[ch]: Added private API
	_g_async_queue_get_mutex so that g_thread_pool_free() can use the
	async queue mutex. 
	
	* glib/gthreadpool.c: Make sure
	g_thread_pool_stop_unused_threads() actually stops unused threads
	and global limits (like max idle time and max unused threads) can
	be set without creating a thread pool first. Fixed #335215 (patch
	from Chris Wilson).  
	
	* tests/threadpool-test.c: Added two new tests, tests setting
	global limits before creating a thread pool. The second test
	makes sure unused threads are actually stopped when using the
	g_thread_pool_stop_unused_threads(). 

2006-04-05  Matthias Clasen  <mclasen@redhat.com>

	* glib/gnulib/vasnprintf.c (vasnprintf): Make
	long long printing work if snprintf is not 
	available.  (#332841, Michael McDonald)

2006-04-05  Behdad Esfahbod  <behdad@gnome.org>

	* tests/option-test.c: Check the return value of g_get_prgname for
	NULL before passing to strcmp.

	* tests/slice-test.c: Report the correct name in Usage summary.

2006-04-05  Matthias Clasen  <mclasen@redhat.com>

	* tests/run-collate-tests.sh: Fix up shell script.

	* tests/option-test.c (arg_test5): Skip the test if
	setting the locale fails.
	(empty_test1): Reset prgname before the test.

	* tests/Makefile.am: Arrange for run-bookmark-test.sh
	to be run by make check.

	* tests/utf8-pointer.c: 
	* tests/tree-test.c: Silence warnings.

2006-04-04  Matthias Clasen  <mclasen@redhat.com>

	* glib/glib.symbols:
	* glib/gbase64.[hc]: Add G_GNUC_MALLOC where
	appropriate, use glib types.

2006-04-04  Alexander Larsson  <alexl@redhat.com>

	* glib/Makefile.am:
	* glib/gbase64.[ch]:
	* glib/glib.symbols:
	Add base64 encode/decode functions
	
	* glib/glib.h:
	Include gbase64.h
	
	* tests/Makefile.am:
	* tests/base64-test.c:
	Tests for base64 functions

2006-04-04  Matthias Clasen  <mclasen@redhat.com>

	* glib/gdate.c: Move short_month_names and long_month_names
	to bss.

	* glib/gspawn-win32.c (g_spawn_error_quark):
	* glib/gspawn.c (g_spawn_error_quark):
	* glib/gshell.c (g_shell_error_quark):
	* glib/gmarkup.c (g_markup_error_quark):
	* glib/goption.c (g_option_error_quark):
	* glib/gkeyfile.c (g_key_file_error_quark):
	* glib/giochannel.c (g_io_channel_error_quark):
	* glib/gfileutils.c (g_file_error_quark):
	* glib/gconvert.c (g_convert_error_quark):
	* glib/gbookmarkfile.c (g_bookmark_file_error_quark):
	* glib/gthread.c (g_thread_error_quark): No point in making
	the error path fast by caching quarks.

	* glib/gbookmarkfile.c: Make the parser struct const.

2006-04-04  Behdad Esfahbod  <behdad@gnome.org>

	* glib/gbookmarkfile.c: Fix accidentally broken build.

2006-04-03  Matthias Clasen  <mclasen@redhat.com>

	* glib/gbookmarkfile.c: Don't include sys/time.h  (#337027,
	 Kazuki IWAMOTO)

2006-03-31  Tor Lillqvist  <tml@novell.com>

	* glib/gstdio.c (g_remove): Revert change below. It wasn't a good
	idea after all, says the original bug reporter. See bug for
	discussion.

2006-03-30  Tor Lillqvist  <tml@novell.com>

	* glib/gstdio.c (g_remove): [Win32] call rmdir() only if remove()
	fails with errno set to ENOENT, to leave errno set to EACCESS if
	that is the problem. (#334799, Yevgen Muntyan)

2006-03-30  Matthias Clasen  <mclasen@redhat.com>

	* glib/gbookmarkfile.c (g_bookmark_file_get_app_info): Sync
	the parameter names with the .h files, otherwise gtk-doc
	misbehaves.

2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>

	* tests/.cvsignore: Add bookmarkfile-test to the ignored files.

2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>

	* tests/Makefile.am:
	* tests/bookmarkfile-test.c:
	* tests/run-bookmark-test.sh:
	* tests/bookmarks/*.xbel: Add test suite for GBookmarkFile.

2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>

	* docs/reference/glib/glib-docs.sgml:
	* docs/reference/glib/glib-sections.txt:
	* docs/reference/glib/tmpl/bookmarkfile.sgml: Add documentation for
	GBookmarkFile to GLib's reference guide.

2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>

	* glib/glib.h:
	* glib/gbookmarkfile.h
	* glib/gbookmarkfile.c: Add GBookmarkFile, a parser for files
	containing bookmarks stored using the Desktop Bookmark
	specification. Fixes bug #327662.

	* glib/glib.symbols:
	* glib/Makefile.am:
	* glib/makefile.msc.in:
	* glib/makefile.mingw.in: Build glue for GBookmarkFile.

2006-03-27  Dom Lachowicz  <cinamod@hotmail.com>

	* tests/option-test.c: Copy-and-paste error slipped into test5. Enable
	test5, as per Matthias' comments in bug 329548#c11.

	Change a gboolean to an int. Fixes bug #329789.

	* configure.in: Bump version number to 2.11.0
	
2006-03-27  Matthias Clasen  <mclasen@redhat.com>

	Add support for floating point numbers to goption.
	(#329548, Behdad Esfahbod, patch by Antoine Dopffer and 
	 Dom Lachowicz)

	* glib/goption.h:
	* glib/goption.c: Support double arguments.

	* tests/option-test.c: Test double arguments.`

2006-03-26  Matthias Clasen  <mclasen@redhat.com>

        * glib/goption.c (g_option_context_new): Improve the description
        of parameter_string in the docs.  (#336085, Claudio Saavedra)

2006-03-24  Martyn Russell  <martyn@imendio.com>

	* 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.

	* 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. 

2006-03-23  Matthias Clasen  <mclasen@redhat.com> 

	=== Branch for 2.10 ===
