=== 2.16.1 ===
2009-02-22  Gian Mario Tagliaretti  <gianmt@gnome.org>

	* NEWS: Updated.

2009-02-20  James Henstridge  <james@jamesh.id.au>

	* ltihooks.py: pull in changes from pygtk (updating license header
	from GPL to LGPL).

2009-02-18  Andre Klapper  <a9016009@gmx.de>

	* gobject/pygobject.h:
	Change comment to avoid false positives when grep'ing for 
	deprecated gtk functions

2009-02-17  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* gio/gfile.override, gio/gio.defs, gio/gio.override: Bug 556250
	again.  I screwed up and gave misinformation about how to fix it.
	It must be pyg_begin/end_allow_threads, pyg_block/unblock_threads
	is only to be used for async callbacks.

2009-02-10  Gian Mario Tagliaretti  <gianmt@gnome.org>

	Bug 556250 – non-async functions don't release python locks before
	calling blocking C functions

	* gio/gio.override:
	* gio/gfile.override:
	* gio/gio.defs: release the thread lock.

2009-02-08  Gian Mario Tagliaretti  <gianmt@gnome.org>

	Bug 568427 – "gio.Error: Too many open files" without too many
	open files
	
	* gobject/pygtype.c (_wrap_g_type_wrapper__get_name):
	* gobject/gobjectmodule.c (get_type_name_for_class):
	* gobject/pygobject.c (build_parameter_list), (PyGProps_length):
	* gio/gfileinfo.override (_wrap_g_file_info_list_attributes):
	* gio/gio.override (_wrap_g_content_type_guess):
	* gio/gfile.override (_wrap__file_init), (_wrap_g_file_load_contents)
	(_wrap_g_file_load_contents_finish): Remove some memory leaks.
	
	* gio/gio.defs: add (caller-owns-return #t) all over the place to
	prevent memory leaks.
	
	patch contributed by Paul Pogonyshev, Paolo Borelli and
	Gian Mario Tagliaretti.

2009-01-29  Paul Pogonyshev  <pogonyshev@gmx.net>

	Bug 569350 – Inconsistent use of tabs and spaces in pygtk.py

	* pygtk.py: Replace all tabs with spaces.

2009-01-29  Paul Pogonyshev  <pogonyshev@gmx.net>

	Bug 567792 – gio.InputStream.read_async can cause memory
	corruption

	* gio/gio.override (py_decref_callback): Remove (unused now).
	(pygio_notify_allocate_buffer, pygio_notify_attach_to_result)
	(pygio_notify_get_attached): New functions.
	(async_result_callback_marshal): Attach to the result object if
	asked and then don't free self.  Fix reference leak (spotted by
	Gustavo).

	* gio/ginputstream.override (async_result_callback_marshal_read):
	Remove.  Use new attachment functionality in
	async_result_callback_marshal() instead.
	(_wrap_g_input_stream_read_async): Use the new functions (also
	those mentioned in the cleanup log below).
	(_wrap_g_input_stream_read_finish): Use the new functions.

2009-01-27  Daniel Elstner  <danielk@openismus.com>

	* codegen/docextract_to_xml.py (escape_text): Do not escape the
	ampersand "&" in entity references (bug #568485).  Replace some
	unusual entity references in the output with their literal values.

2009-01-14  Paul Pogonyshev  <pogonyshev@gmx.net>

	Bug 566571 – gtk.Buildable interface method override is not
	recognized

	* gobject/gobjectmodule.c (pyg_type_add_interfaces): New function,
	break out code repetition out of pyg_type_register().

	* tests/test_subtype.py
	(TestSubType.test_gtk_buildable_virtual_method): New test
	case (inactive).

2009-01-14  Paul Pogonyshev  <pogonyshev@gmx.net>

	Bug 566706 – cleanup GIO overrides

	* gio/gio.override (pygio_notify_new)
	(pygio_notify_using_optional_callback)
	(pygio_notify_callback_is_valid_full)
	(pygio_notify_callback_is_valid)
	(pygio_notify_reference_callback): New functions.
	(pygio_notify_free): Rename from pygio_free_notify() and extend.
	(async_result_callback_marshal): Warn if new `referenced' field is
	not set (programming error).
	(_wrap_g_drive_eject, _wrap_g_drive_poll_for_media)
	(_wrap_g_mount_unmount, _wrap_g_mount_eject)
	(_wrap_g_mount_remount): Lots of cleanup: use new functions
	instead of repeating code, unify and fix error handling.

	* gio/gfile.override (_wrap_g_file_read_async)
	(_wrap_g_file_load_contents_async)
	(_wrap_g_file_enumerate_children_async)
	(_wrap_g_file_mount_mountable, _wrap_g_file_unmount_mountable)
	(_wrap_g_file_mount_enclosing_volume, _wrap_g_file_copy)
	(_wrap_g_file_copy_async, _wrap_g_file_move)
	(_wrap_g_file_append_to_async, _wrap_g_file_create_async)
	(_wrap_g_file_replace_async, _wrap_g_file_query_info_async)
	(_wrap_g_file_replace_contents_async): Similar cleanup.

	* gio/gfileenumerator.override
	(_wrap_g_file_enumerator_next_files_async): Similar cleanup.

	* gio/gicon.override (_wrap_g_loadable_icon_load_async): Similar
	cleanup.

	* gio/ginputstream.override (_wrap_g_input_stream_close_async):
	Similar cleanup.

	* gio/goutputstream.override (_wrap_g_output_stream_write_async)
	(_wrap_g_output_stream_close_async): Similar cleanup.

	* gio/gvolume.override (_wrap_g_volume_mount)
	(_wrap_g_volume_eject): Similar cleanup.

	* tests/test_gio.py (TestFile.test_copy_async): Fix the test.

2009-01-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* gobject/gobjectmodule.c (pyg_type_register): Add a comment
	explaining why the two for loops for registering interfaces.

2009-01-07  Paul Pogonyshev  <pogonyshev@gmx.net>

	Bug 566744 – _wrap_g_input_stream_read_async() argument parsing
	has incorrect keyword args

	* gio/ginputstream.override (_wrap_g_input_stream_read_async): Fix
	keyword list to be in sync with positional arguments.

2009-01-06  Gian Mario Tagliaretti  <gianmt@gnome.org>

	Bug 566737 – Bad -I ordering can break build

	* Makefile.am:
	* gobject/Makefile.am:
	* gio/Makefile.am:
	* tests/Makefile.am:
	Commit a patch from [dmacks at netspace dot org]

2009-01-04  Paul Pogonyshev  <pogonyshev@gmx.net>

	Bug 564018 – pygobject libtool-2.2 patch

	* configure.ac: Apply the patch provided by Cygwin Ports
	maintainer.

2009-01-06  Gian Mario Tagliaretti  <gianmt@gnome.org>

	* configure.ac: Post release version bump to 2.16.1