=== 0.15.0 ===
2010-08-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc/conf.py: [769] bump version

2010-07-24  sean ross

	* pybindgen/cppclass_typehandlers.py: [768] Fix segfault when using
	custodian=0 with default_value; https://launchpad.net/bugs/609272
	fixed

2010-07-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/module.py,
	* pybindgen/wrapper_registry.py: [767] Optimization: eliminate
	duplicate #includes from wrapper_registry.

2010-05-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/callback,
	* examples/callback/c.cc,
	* examples/callback/c.h,
	* examples/callback/c_test.py,
	* examples/callback/modulegen.py,
	* examples/callback/wscript: Added.

	* examples/wscript: Modified.

	[766] Add a simple callback example.

2010-05-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/module.py: [765] Fix bug in _MonolithicSinkManager causing
	module.headers to not be written guaranteed before module.body

2010-05-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppmethod.py: [764] New API,
	CppClass.set_post_instance_creation_function, to meet ns3::Object's
	needs.

2010-04-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [763] merge

2010-04-22  Lincoln de Sousa <lincoln@indigente>

	* pybindgen/cppclass.py: [762.1.1] Fixing the return string of the
	get_free_code method

	The ReferenceCountingFunctionsPolicy.get_free_code method is returning
	a wrong value. Variables self.decref_function and obj_expr were
	missplaced.

=== 0.14.1 ===
2010-04-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc/conf.py: [762] Bump version in docs

2010-04-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [761] remove leftover debug print

	* pybindgen/cppclass.py,
	* tests/foo.h: [760] Fix multiple-inheritance bug;
	https://launchpad.net/bugs/563786 fixed

2010-04-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/inttype.py: [759] Add 'short unsigned int' as
	alias for uint16_t

2010-04-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/stringtype.py: [758] Support default_value in
	char* parameters (Question #106449)

	* pybindgen/module.py: [757] fix the doctest after exception value
	changed

2010-03-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/module.py: [756] Add detail to the exception

2010-03-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py: [755] Add container support for
	std::dequeue, as synonym for the more correct std::deque

2010-02-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* README: [754] More README improvements, specifically win32 related

	* pybindgen/typehandlers/floattype.py,
	* tests/foo.h,
	* tests/foomodulegen.py: [753] Fix some MSVC warnings

2010-02-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* include,
	* include/stdint.h: Added.

	* tests/foo.h,
	* tests/test-generation.py,
	* tests/wscript,
	* wscript: Modified.

	[752] Check for stdint.h; if not found use Paul Hsieh's pstdint.h;
	https://launchpad.net/bugs/519456 fixed

2010-02-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* README: [751] Update README

2010-02-14  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc/tutorial.rst,
	* doc/typehandlers.rst,
	* pybindgen/cppmethod.py: [750] Tutorial: fix first-example URL, add
	MSVC build instructions from T Powers

	* pybindgen/cppmethod.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py: [749] Add missing 'throw' modifiers as needed
	to method signatures in helper classes;
	https://launchpad.net/bugs/521020 fixed

	* wscript: [748] Fix bug #521196: wscript overwrites PYTHONPATH;
	https://launchpad.net/bugs/521196 fixed

=== 0.14.0 ===
2010-02-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc/conf.py,
	* doc/utils.rst: [747] docs..

	* NEWS: [746] Update NEWS for release

2010-02-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/utils.py: [745] Fix compatibility with Python < 2.5
	(missing any())

2010-01-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [744] multiple-inheritance: gccxml
	scanning part

2010-01-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/foomodulegen_common.py,
	* tests/footest.py: [743] Experimental support for multiple-
	inheritance.  GccXml scanning part not done yet.

2010-01-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [742] Add annotation support for instance
	attributes, and test pointer instance attribute.

2010-01-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/enum.py,
	* pybindgen/typehandlers/inttype.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [741] Wrap enum pointer params

2010-01-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [740] Wrap non-virtual protected methods as well;
	https://launchpad.net/bugs/508577 fixed

	* pybindgen/cppattribute.py: [739] Follow more closely the expected
	signatures of getters and setters; https://launchpad.net/bugs/508567
	fixed

2010-01-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/stringtype.py: [738] merge

2010-01-12  Ben Fitzpatrick <benf@vtiinstruments.com>

	* pybindgen/typehandlers/stringtype.py: [737.1.1] Fix to allow
	compilation of std::string* types

2010-01-12  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/stringtype.py: [737] std::string* param type
	handler

2010-01-10  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/inttype.py: [736] Add support for int16_t&
	parameters

2009-12-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* benchmarks/bench.py,
	* benchmarks/testapi-pybindgen.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/settings.py,
	* tests/foomodulegen_common.py,
	* tests/footest.py,
	* tests/test-generation.py: [735] Align virtual method handling code
	with other tools: to implement virtual method foo, now the user
	defines a method foo in Python, not _foo. Option
	pybindgen.settings.deprecated_virtuals added for backward
	compatibility.

	* doc/settings.rst,
	* pybindgen/settings.py: [734] Improve the documentation of the
	pybindgen.settings module

2009-12-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* benchmarks/testapi.sip: Added.

	* benchmarks/bench.py,
	* benchmarks/wscript,
	* wscript: Modified.

	[733] Add SIP benchmarking

2009-12-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [732] Also generate the html report from 'waf bench'

2009-12-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* benchmarks/plotresults.py: Added.

	[731] add script to plot benchmark results

2009-12-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* benchmarks/bench.py: [730] Improved pybindgen version in benchmarks

	* benchmarks/bench.py,
	* benchmarks/testapi-pybindgen.py,
	* benchmarks/testapi.cc,
	* benchmarks/testapi.h,
	* benchmarks/testapi_boost.cc,
	* benchmarks/testapi_swig.i,
	* wscript: [729] More benchmarks

2009-12-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* benchmarks,
	* benchmarks/bench.py,
	* benchmarks/testapi-pybindgen.py,
	* benchmarks/testapi.cc,
	* benchmarks/testapi.h,
	* benchmarks/testapi_boost.cc,
	* benchmarks/testapi_swig.i,
	* benchmarks/wscript: Added.

	* wscript: Modified.

	[728] Benchmarks

2009-12-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* HACKING: [727] Update HACKING instructions (now waf is included)

=== 0.13.0 ===
2009-12-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* NEWS: [726] NEWS update

	* doc/conf.py,
	* doc/cppclass.rst,
	* doc/cppclass_typehandlers.rst,
	* doc/cppexception.rst,
	* pybindgen/container.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppexception.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/codesink.py,
	* wscript: [725] sphinx-ify more docs

2009-12-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc/Makefile,
	* waf,
	* wscript: [724] Update 'waf dist' code; switch to zip files.

2009-12-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc,
	* doc/Makefile,
	* doc/_static,
	* doc/_templates,
	* doc/apiref.rst,
	* doc/codesink.rst,
	* doc/conf.py,
	* doc/container.rst,
	* doc/cppattribute.rst,
	* doc/cppclass.rst,
	* doc/cppclass_typehandlers.rst,
	* doc/cppexception.rst,
	* doc/cppmethod.rst,
	* doc/enum.rst,
	* doc/figures,
	* doc/figures/Makefile,
	* doc/figures/work-flow-basic.dia,
	* doc/figures/work-flow-gccxml-apidefs.dia,
	* doc/figures/work-flow-gccxml.dia,
	* doc/function.rst,
	* doc/gccxmlparser.rst,
	* doc/index.rst,
	* doc/make.bat,
	* doc/module.rst,
	* doc/settings.rst,
	* doc/tutorial.rst,
	* doc/typehandlers.rst,
	* doc/utils.rst: Added.

	* .bzrignore,
	* pybindgen/__init__.py,
	* pybindgen/container.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppclass_container.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppexception.py,
	* pybindgen/cppmethod.py,
	* pybindgen/enum.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/ctypeparser/__init__.py,
	* pybindgen/typehandlers/ctypeparser/tokenizer.py,
	* pybindgen/typehandlers/pyobjecttype.py: Modified.

	[723] Migrate documentation to Sphinx;
	https://launchpad.net/bugs/449389 fixed

2009-12-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppclass_container.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppexception.py,
	* pybindgen/cppmethod.py,
	* pybindgen/enum.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/ctypeparser/__init__.py,
	* pybindgen/typehandlers/ctypeparser/tokenizer.py,
	* pybindgen/typehandlers/pyobjecttype.py: [722.1.6] convert existing
	api docs to sphinx format

2009-12-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc/apiref.rst,
	* doc/codesink.rst,
	* doc/container.rst,
	* doc/cppattribute.rst,
	* doc/cppclass_typehandlers.rst,
	* doc/cppexception.rst,
	* doc/enum.rst,
	* doc/figures,
	* doc/figures/Makefile,
	* doc/figures/work-flow-basic.dia,
	* doc/figures/work-flow-gccxml-apidefs.dia,
	* doc/figures/work-flow-gccxml.dia,
	* doc/settings.rst,
	* doc/typehandlers.rst: Added.

	* .bzrignore,
	* doc/Makefile,
	* doc/conf.py,
	* doc/cppclass.rst,
	* doc/cppmethod.rst,
	* doc/gccxmlparser.rst,
	* doc/index.rst,
	* doc/module.rst,
	* doc/tutorial.rst,
	* doc/utils.rst: Modified.

	[722.1.5] Even more sphinx documentation work

2009-12-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* .bzrignore: [722.1.4] Update ignored files list

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

	* doc/cppmethod.rst,
	* doc/function.rst: Added.

	* doc/conf.py,
	* doc/index.rst,
	* doc/tutorial.rst: Modified.

	[722.1.3] more sphinx docs

2009-12-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc/cppclass.rst,
	* doc/tutorial.rst,
	* doc/utils.rst: Added.

	* doc/_build: Removed.

	* .bzrignore,
	* doc/conf.py,
	* doc/gccxmlparser.rst,
	* doc/index.rst,
	* doc/module.rst,
	* pybindgen/__init__.py: Modified.

	[722.1.2] more sphinx work

2009-12-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* doc,
	* doc/Makefile,
	* doc/_build,
	* doc/_static,
	* doc/_templates,
	* doc/conf.py,
	* doc/gccxmlparser.rst,
	* doc/index.rst,
	* doc/make.bat,
	* doc/module.rst: Added.

	[722.1.1] Experimenting with sphinx documentation, work in progress

2009-12-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* wscript: [722] Document add_custodian_and_ward

2009-12-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/gccxmlparser.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [721] Add return_internal_reference option
	support, similar to boost::python.

	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/typehandlers/base.py: [720] custodians-and-wards:
	refactoring, add new API calls for greater flexibility

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

	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py: [719] Split a new
	CppClassRefReturnValue out from CppClassReturnValue, because some
	options make no sense for value return

	* pybindgen/cppclass_typehandlers.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [718] Implement reference_existing_object also for
	Class& return values

2009-11-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_typehandlers.py: [717] Add some source code
	comments, CppClassPtrReturnValue.convert_c_to_python is a long and
	complicated piece of code...

2009-11-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_typehandlers.py: [716] Before appending to
	__wards__ list, check to see if the object is already there

	* tests/foo.h: [715] fix memleak in test code

	* wscript: [714] valgrind option

	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen.py: [713] Now the 'custodian' option only manages
	the lifecycle of the python wrapper, not the contained C++ object.  To
	manage the C++ object, now 'transfer_ownership', 'caller_owns_return',
	or the new 'reference_existing_object', must be given in addition to
	'custodian'.

	* wscript: [712] Enable verbose unit tests if -v given in waf check

2009-11-18  Mike Owen  <mikeowen@llnl.gov>

	* pybindgen/pytypeobject.py: [711] Add a missing Py_DECREF in the
	sq_item slot wrapper.

2009-11-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [710] bug fixes from previous commit

	* pybindgen/gccxmlparser.py: [709] merge

	* pybindgen/gccxmlparser.py: [703.1.1] Fix scanning to place template
	instantiation near the section of the template arguments

	Add a new get_section_precedence virtual method support to class
	PygenClassifier.  This is used to possibly place the template
	instantiation class in the proper code section.  Fixes a problem in
	ns-3...

2009-11-15  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/footest.py: [708] test a bit more the custodian code

2009-11-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* waf: Added.

	* .bzrignore: Modified.

	[707] By popular demand, and a waf binary to the source code
	repository

2009-11-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppmethod.py,
	* pybindgen/utils.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/test-generation.py: [706] Lots of custodian=xxx bug fixes;
	https://launchpad.net/bugs/461349 fixed

2009-10-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [705] Don't postpone scanning class due to
	implicit target not registered if the target is not a user class;
	https://launchpad.net/bugs/455689 fixed

2009-10-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppmethod.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [704] Bug 450255: Invalid 'cannot generate a
	constructor' case; https://launchpad.net/bugs/450255 fixed

2009-10-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppmethod.py: [703] In C++, method signatures don't
	include the return type.  For ns-3 bug #723.

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

	* pybindgen/typehandlers/booltype.py: [702] Fix bad bool parameter
	default value handling; https://launchpad.net/bugs/436154 fixed

	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [701] Add test case for bug #436154

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

	* pybindgen/overloading.py: [700] Bug fix

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

	* pybindgen/cppclass_container.py: [699] fix docstring

	* NEWS: [698] Update NEWS

2009-08-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [697] Fix issue with duplicate parent callers

	* pybindgen/typehandlers/base.py: [696] Simplify

	* pybindgen/typehandlers/booltype.py: [695] Support default_value for
	boolean type handler

	* pybindgen/cppclass.py: [694] Fix 'right' parameter type checking in
	CppClass.add_binary_numeric_operator.

	* pybindgen/cppexception.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* tests/foomodulegen-auto-split.py,
	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py,
	* tests/foomodulegen3.py,
	* tests/foomodulegen4.py,
	* tests/footest.py: [693] Add code to allow translation of the
	exception message into python

	* pybindgen/cppexception.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen-auto-split.py,
	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py,
	* tests/foomodulegen3.py,
	* tests/foomodulegen4.py,
	* tests/footest.py: [692] Add foreign_cpp_namespace option to
	CppException, and tests using std::exception.

2009-08-26  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [691] Don't add method table entries for
	sequence methods registered via slots

2009-08-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppexception.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foo.h: [690] gccxml-scanning for exceptions and throw
	modifiers, semi-automatic, with help of annotation

2009-08-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppmethod.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [689] catch exceptions in constructors

	* pybindgen/cppmethod.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [688] catch exceptions in method calls too

	* pybindgen/cppexception.py: [687] mem fixes

2009-08-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppexception.py: Added.

	* pybindgen/function.py,
	* pybindgen/module.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: Modified.

	[686] Add API to basically wrap C++ exceptions and catch them in free
	function calls.

2009-08-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_container.py: [685] cleanup

2009-08-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/foomodulegen_common.py,
	* tests/footest.py: [684] one more test

	* tests/foomodulegen.py,
	* tests/foomodulegen_common.py: [683] Make the gccxml scanning tests
	pass

2009-08-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_container.py: Added.

	* pybindgen/cppclass.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: Modified.

	[682] New API to add container iteration powers to wrapped C++
	classes.  gccxml-scanning part missing.

2009-08-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [681] Add unit test for int* out parameter

2009-08-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* tests/c-hello/hellomodulegen.py: [680] Add custom_name support for
	wrapped classes; https://launchpad.net/bugs/257366 fixed

	* pybindgen/gccxmlparser.py: [679] gccxml-scan for unary operators

	* pybindgen/gccxmlparser.py: [678] eliminate excessive warnings

2009-08-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [677] Add unit test for unary minus

	* pybindgen/function.py: [676] Add foreign_cpp_namespace option to
	Function wrappers

2009-08-15  J. Michael Owen <mikeowen@llnl.gov>

	* pybindgen/cppclass.py: [675] Unary minus operator support

2009-08-15  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/pytypeobject.py: [674] Fix dangling pointer

2009-08-15  J. Michael Owen <mikeowen@llnl.gov>

	* pybindgen/cppclass.py,
	* pybindgen/pytypeobject.py: [673] Allow tp_len slot to support
	overloaded methods; https://launchpad.net/bugs/401761 fixed

	* pybindgen/typehandlers/inttype.py: [672] unsigned long, return value
	support; unsigned long& and unsigned long parameter type support

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

	* pybindgen/utils.py: [671] Fix PYBINDGEN_UNUSED #define for non-GCC
	compiler; https://launchpad.net/bugs/401740 fixed

2009-08-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [670] fix gccxml scanning operator bug

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/base.py: [669] typedef bug fixes

2009-07-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [668] Don't wrap private/protected
	operators.

	* pybindgen/cppmethod.py: [667] clear exception after checking if
	virtual method is implemented.

2009-07-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/converter_functions.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/base.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py,
	* tests/test-generation.py: [666] #401742 numeric operators with non-
	class right operand need more polish;
	https://launchpad.net/bugs/401742 fixed

2009-07-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppmethod.py: [665] Fix bug 400338: PyObject_HasAttrString
	check in virtual method wrappers does not work;
	https://launchpad.net/bugs/400338 fixed

	* pybindgen/cppmethod.py: [664] is_pure_virtual=True should imply
	is_virtual=True; https://launchpad.net/bugs/399870 fixed

	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [663] add pure+protected virtual method test;
	https://launchpad.net/bugs/399876 fixed

=== 0.11.0 ===
2009-07-12  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [662] dist fixes

	* NEWS: [661] I forgot about the size_t type support

	* NEWS: [660] Update NEWS for the next release

	* wscript: [659] More correctly determine whether the compiler accepts
	-fvisibility=hidden

	* examples/a/wscript,
	* examples/b/wscript,
	* examples/c/wscript,
	* examples/d/wscript,
	* examples/e/wscript,
	* examples/f/wscript,
	* examples/g/wscript,
	* examples/h/wscript: [658] Allow deprecation warnings in examples,
	since we can't get away from them (pygccxml+python2.6 gives warnings)

	* pybindgen/cppclass.py,
	* tests/foo.h: [657] Fix warning: ‘class xpto’ has virtual functions
	but non-virtual destructor

2009-07-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/pytypeobject.py: [656] Fix reference leaks.

2009-07-08  J. Michael Owen

	* pybindgen/cppclass.py,
	* pybindgen/pytypeobject.py: [655] Refactor sequence methods handling,
	for simplification.  Let sq_len call the generated wrapper for
	__len__, etc..

	* pybindgen/utils.py: [654] Improved name mangling

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

	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [653] sequence protocol unit tests

	* pybindgen/pytypeobject.py: [652] small bug fix

	* pybindgen/converter_functions.py: [651] converter functions need no
	C return value variable

	* pybindgen/typehandlers/booltype.py: [650] fix windows warning C4800:
	'int' : forcing value to bool 'true' or 'false' (performance warning)

	* pybindgen/typehandlers/inttype.py: [649] size_t value
	parameter/return type support

	* pybindgen/gccxmlparser.py: [648] Add support for the 'name'
	annotation for methods also.

	* pybindgen/cppclass_typehandlers.py,
	* tests/foo.h: [647] merge

2009-06-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_typehandlers.py,
	* tests/foo.h: [641.1.1] After passing object reference to python
	code, do not use the copy constructor if the class has none.

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

	* pybindgen/cppclass.py: [646] typo

	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [645] Add unit tests for inplace numeric operators

	* pybindgen/gccxmlparser.py: [644] gccxml-scan for inplace numeric
	operators

2009-06-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [643] Don't generate sequence methods
	structure unless really needed.

	* pybindgen/cppclass.py,
	* pybindgen/module.py,
	* pybindgen/pytypeobject.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/stringtype.py,
	* pybindgen/utils.py: [642] merge

	* pybindgen/cppclass.py,
	* pybindgen/module.py,
	* pybindgen/pytypeobject.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/stringtype.py,
	* pybindgen/utils.py: [616.1.1] J. Michael Owen contribution: inplace
	numeric operators, sequence protocol support (__len__, __getitem__,
	__setitem__). Source: http://mail.python.org/pipermail/cplusplus-
	sig/2009-June/014595.html

	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [641] Add a unit test with virtual method and a
	inout object ref parameter

2009-05-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [640] Try harder to make sure helper classes
	with missing pure virtual methods are not generated.

	* pybindgen/enum.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [639] Implement support for enum reference
	parameters

2009-05-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* tests/foomodulegen.py: [638] Add a docstring parameter for CppClass
	/ Module.add_cpp_class

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

	* wscript: [637] ./waf --generate-version falls back to using the bzr
	external command when import bzrlib fails.  Based on patch by Mathieu
	Lacage.

2009-04-29  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [636] Only lookup the alias names as
	fallback, not as first choice.

	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/__init__.py,
	* pybindgen/typehandlers/base.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [635] Better support for typedefs

2009-04-28  Robin Gilks

	* pybindgen/cppmethod.py: [634] Add a docstring parameter to CppMethod
	constructor

2009-04-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/base.py,
	* tests/c-hello/wscript,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [633] Add rudimentary support for std::map
	containers.

	* tests/wscript: [632] More waf fixes

	* wscript: [631] Changes to work with WAF 1.5.5

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

	* pybindgen/module.py,
	* wscript: [630] Add pybindgen support for GCC's -fvisibility=hidden

2009-02-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [629] I don't remember why I
	reserved names of parameters in forward wrappers, just remove it, it's
	silly.

	* pybindgen/typehandlers/pyobjecttype.py: [628] Fix missing keyword in
	parsing PyObject* parameters; https://launchpad.net/bugs/331981 fixed

	* pybindgen/typehandlers/base.py: [627] Catch better errors regarding
	lack of keywords

2009-02-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/g/modulegen.py: [626] Add wrapping of std::ofstream to the
	example

	* pybindgen/cppclass.py: [625] Add foreign_cpp_namespace option to
	CppClass, for wrapping std:: classes inside our module namespace.

	* pybindgen/enum.py: [624] Allow wrapping enum given list of (name,
	value) pairs

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

	* pybindgen/cppattribute.py: [623] We do not need GIL locking for
	attribute setters (spotted by Stuart Stock)

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

	* pybindgen/cppclass.py,
	* pybindgen/module.py: [622] Remove redundant calls to
	traceback.extract_stack()

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

	* tests/wscript,
	* wscript: [621] build fixes

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

	* wscript: [620] Correct way to enable WAF autoconfigure

2008-12-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/d/d.cc,
	* pybindgen/cppclass.py,
	* pybindgen/pytypeobject.py,
	* tests/foo.h: [619] Fix -Wextra warnings

	* HACKING,
	* README,
	* examples/a/wscript,
	* examples/b/wscript,
	* examples/c/wscript,
	* examples/d/wscript,
	* examples/e/wscript,
	* examples/f/wscript,
	* examples/g/wscript,
	* examples/h/wscript,
	* pybindgen/wscript,
	* tests/c-hello/wscript,
	* tests/wscript,
	* wscript: [618] merge in the new-waf branch

	* HACKING,
	* README: [525.1.14] WAF related clarifications

	* wscript: [525.1.13] Cleanup changes already in WAF

	* wscript: [525.1.12] Use the new cflags tool

2008-12-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [525.1.11] typo

2008-12-14  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [525.1.10] waf dist fixes

	* examples/a/wscript,
	* examples/b/wscript,
	* examples/c/wscript,
	* examples/d/wscript,
	* examples/e/wscript,
	* examples/f/wscript,
	* examples/g/wscript,
	* examples/h/wscript: [525.1.9] Make the examples compile too

	* wscript: [525.1.8] Adapt to waf trunk

2008-12-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* HACKING,
	* tests/c-hello/wscript,
	* tests/wscript,
	* wscript: [525.1.7] Unit tests now run with a forked waf
	(lp:~gjc/waf/cmd)

	* pybindgen/wscript,
	* wscript: [525.1.6] Fix configuration and installation for new waf

2008-12-10  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* .bzrignore,
	* NEWS,
	* README,
	* examples/a/modulegen.py,
	* examples/a/wscript,
	* examples/b/modulegen.py,
	* examples/b/wscript,
	* examples/c/modulegen.py,
	* examples/c/wscript,
	* examples/d/modulegen.py,
	* examples/d/wscript,
	* examples/e/modulegen.py,
	* examples/e/wscript,
	* examples/f/modulegen.py,
	* examples/f/wscript,
	* examples/g/modulegen.py,
	* examples/g/wscript,
	* examples/h/modulegen.py,
	* examples/h/wscript,
	* pybindgen/__init__.py,
	* pybindgen/container.py,
	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/ctypeparser/__init__.py,
	* pybindgen/typehandlers/ctypeparser/tokenizer.py,
	* pybindgen/wrapper_registry.py,
	* tests/c-hello/wscript,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py,
	* tests/wscript,
	* wscript: [525.1.5] merge

2008-11-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py,
	* pybindgen/converter_functions.py,
	* pybindgen/pytypeobject.py,
	* pybindgen/wrapper_registry.py: Added.

	* examples/d/modulegen.py,
	* pybindgen/__init__.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/overloading.py,
	* pybindgen/settings.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/codesink.py,
	* pybindgen/typehandlers/ctypeparser/__init__.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/pyobjecttype.py,
	* pybindgen/typehandlers/stringtype.py,
	* pybindgen/utils.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen-auto-split.py,
	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py,
	* tests/foomodulegen4.py,
	* tests/foomodulegen_common.py,
	* tests/footest.py,
	* tests/test-generation.py,
	* tests/wscript,
	* wscript: Modified.

	[525.1.4] merge

2008-11-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/c-hello/wscript,
	* wscript: [525.1.3] Partially support the new WAF 1.5 branch

2008-07-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/c-hello/wscript: [525.1.2] Oops, leftover test code

	* pybindgen/wscript,
	* tests/c-hello/wscript,
	* tests/wscript,
	* wscript: [525.1.1] Changes for the new waf (trunk).

2008-12-10  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [617] Partial support for pointer-to-container
	parameters

=== 0.10.0 ===
2008-12-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [616] ignore a local directory i keep around

	* .bzrignore: [615] ignored

	* pybindgen/gccxmlparser.py: [614] comment out debug print

	* examples/a/modulegen.py,
	* examples/b/modulegen.py,
	* examples/c/modulegen.py,
	* examples/d/modulegen.py,
	* examples/e/modulegen.py,
	* examples/f/modulegen.py,
	* examples/g/modulegen.py,
	* examples/h/modulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/ctypeparser/__init__.py,
	* pybindgen/typehandlers/ctypeparser/tokenizer.py: [613] Fix
	compatibility with python 2.3 and 2.4

	* wscript: [612] fix configure

	* NEWS: [611] One last NEWS item I forgot

	* pybindgen/__init__.py: [610] Documentation: fix the refcounting
	text, add minimal section about STL containers

	* NEWS: [609] Update NEWS for the next release

2008-11-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/a/wscript,
	* examples/b/wscript,
	* examples/c/wscript,
	* examples/d/wscript,
	* examples/e/wscript,
	* examples/f/wscript,
	* examples/g/wscript,
	* examples/h/wscript,
	* tests/c-hello/wscript,
	* tests/wscript,
	* wscript: [608] Allow installation even if C/C++ compiler was not
	detected by WAF

	* README: [607] Add more useful hints to the README file

2008-11-19  Ben Smith <benjamin.coder.smith@gmail.com>

	* wscript: [606] Windows compatibility fix in wscript function
	get_version_from_bzr()

2008-11-19  Ben Smith <benjamin.coder.smith -at- gmail>

	* wscript: [605.1.1] fix to transform windows abspath to bazaar-
	friendly uri

2008-11-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foo.h: [605] Fix compiler warnings

	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/ctypeparser/__init__.py,
	* pybindgen/typehandlers/ctypeparser/tokenizer.py,
	* pybindgen/wrapper_registry.py: [604] Python 2.6 fixes

2008-11-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [603] Compare functions by function name
	first, only after by full declation

	* pybindgen/gccxmlparser.py: [602] Sort also free functions and
	namespaces when doing gccxml scanning

2008-10-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py: [601] Clear the container before starting to
	append items to it

2008-10-15  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* tests/foo.h: [600] Check for anonymous types when wrapping member
	variables, and skip them for now, as they cause bad code to be
	generated.

2008-10-12  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [599] Missing wrapper in error handling

	* pybindgen/overloading.py: [598] While adding overloaded
	methods/functions, don't check the PyMethodFlags immediately, check it
	later, as needed, to allow the programmer a chance to fix the
	parameters (e.g. default_parameter_type) before code generation.

	* pybindgen/utils.py: [597] Don't use 'callable' as parameter name, it
	is a python builtin function

	* pybindgen/cppmethod.py: [596] Better error messages

2008-10-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/pytypeobject.py: [595] Don't generate nb_index slot: it is
	not used yet and breaks compatibility with Python < 2.5

	* pybindgen/pytypeobject.py: [594] Indent the generated
	PyNumberMethods struct

2008-10-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [593] Add flag Py_TPFLAGS_CHECKTYPES to type
	when numeric operators are implemented

	* pybindgen/cppclass.py: [592] Need to clear exception when type
	checking fails

	* pybindgen/converter_functions.py,
	* pybindgen/cppclass.py,
	* pybindgen/module.py,
	* pybindgen/pytypeobject.py,
	* tests/footest.py: [591] Wrap C++ arithmetic operators;
	https://launchpad.net/bugs/277054 fixed

2008-10-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/pytypeobject.py,
	* tests/foo.h,
	* tests/foomodulegen.py: [590] Getting ready to support numeric
	operators...

2008-10-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [589] Add support for wrapping binary comparison
	operators; https://launchpad.net/bugs/277055 fixed

	* tests/foomodulegen-auto-split.py,
	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py,
	* tests/wscript: [588] Disable profiling during unit tests (but make
	it trivial to re-enable)

	* pybindgen/gccxmlparser.py: [587] Remove any 'const' from registered
	containers

	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [586] Add a unit test for scanning/wrapping output
	reference to container parameter (e.g.std::vector<std::string>
	&outVec)

	* pybindgen/gccxmlparser.py: [585] Fix type normalization function
	(use the pybindgen own ctypeparser.normalize_type_string function)

	* pybindgen/typehandlers/ctypeparser/__init__.py: [584] Now the C type
	parser removes leading :: from identifiers

	* pybindgen/gccxmlparser.py: [583] Fix detection of container types
	from parameters of type pointer-to-container or reference-to-container

2008-10-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [582] Don't leave the type registration
	order completely undefined; we may want to generate python scripts to
	become version controlled, and random order leads to spurious diffs as
	the scanning is done in different machines.

2008-09-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [581] Change the default value of
	enable_anonymous_containers to True; it has been tested already, and
	disabling it doesn't really completely fix the cygwin problems.

2008-09-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py: [580] Fix stl container bad iterator usage
	in some cases (e.g. std::string).

2008-09-15  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/codesink.py,
	* tests/foo.h,
	* tests/foomodulegen-auto-split.py,
	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py,
	* tests/foomodulegen4.py,
	* tests/footest.py: [579] Scan for containers in class attributes, and
	assorted fixes

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

	* pybindgen/cppclass.py,
	* pybindgen/wrapper_registry.py: [578] Fix a std::map wrapper registry
	--erase the same key twice--that caused problems in win32 (mingw)

2008-09-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/ctypeparser/__init__.py: [577] Don't use
	copy.deepcopy; it is buggy on some Python versions.

2008-09-04  Mathieu Lacage <mathieu.lacage@sophia.inria.fr>

	* pybindgen/gccxmlparser.py: [576] Typo.

2008-09-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [575] python 2.4 + gcc 4.2 fix

2008-09-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [574] If generating output string stream
	operator for a class, add the dependency includes <ostream> and
	<sstream> to the module

2008-09-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/d/modulegen.py: [573] Adapt example to new API

	* pybindgen/__init__.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/ctypeparser/__init__.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/pyobjecttype.py,
	* pybindgen/typehandlers/stringtype.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/foomodulegen_common.py,
	* tests/test-generation.py: [572] Revamp type matching system and
	const handling, is_const becomes deprecated.

	Now types are specified with consts inside the type string, is_const
	is deprecated.  The ctypeparser utility module, previously only used
	to canonicalize type strings, is used more extensively throughout
	pybindgen to provide type traits and type manipulation, where needed.
	gccxml type traits no longer used as consequence.

2008-08-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [571] Add option to disable pygccxml support

2008-08-29  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foo.cc,
	* tests/foo.h: [570] Scanning of anonymous containers is now disabled
	by default, due to a bug in gccxml and the problems it causes.

2008-08-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [569] Let's face it: generating tp_hash was
	just a hack; disabled because it's no longer needed.

	* pybindgen/container.py,
	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen.py: [568] Now Container takes a container_type
	parameter instead of add_value_method, to make future tweaking of
	containers based on type easier and not require more API changes.

	* pybindgen/gccxmlparser.py: [567] Don't try to read annotations for
	artificial declarations.

	* pybindgen/gccxmlparser.py: [566] typo

	* pybindgen/container.py,
	* pybindgen/gccxmlparser.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py: [565] Filter out mapping containers for now;
	use the correct method to add a value for each container type, not
	always push_back.

2008-08-26  Mathieu Lacage <mathieu.lacage@sophia.inria.fr>

	* pybindgen/container.py: [564] Add parenthesis to make g++ 4.1 happy
	when parsing container iterator code.

2008-08-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/wrapper_registry.py: Added.

	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/settings.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/foomodulegen_common.py,
	* tests/footest.py: Modified.

	[563] Add optional 'wrapper registry' support, which allows one-to-one
	mapping between C++ object and Python wrapper, so that two wrappers
	can be safely compared with the 'is' operator.

2008-08-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen-auto-split.py,
	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py,
	* tests/wscript: [562] Add to unit tests APIs involding PyObject*, in
	order to test this type handler

	* pybindgen/cppclass_typehandlers.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [561] Add unit tests, fix a C++ object refcount
	leak.

2008-08-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [560] Only enable the copy constructor if is
	public.

	* pybindgen/cppclass.py,
	* tests/footest.py: [559] Generate __copy__ methods to allow
	copy.copy() to work on our class wrappers.

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/footest.py: [558] Fix missing copy constructor that was not
	being generated into the python script.  Add utility method to easily
	add a copy constructor to a class.

	* pybindgen/pytypeobject.py: [557] Default value for tp_dictoffset
	should be 0, not NULL.

	* pybindgen/container.py: [556] Missing typecast to PyObject in
	Py_VISIT argument.

2008-08-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/module.py: [555] fix double initialization of the main
	section code sink

	* pybindgen/gccxmlparser.py: [554] fix getting pygen sink for builtin
	types

	* pybindgen/gccxmlparser.py: [553] gccxml-scan all containers used by
	the APIs (methods and functions).

	* pybindgen/typehandlers/codesink.py: [552] Add some debug code.

2008-08-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [551] refactoring

	* pybindgen/container.py,
	* pybindgen/utils.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [550] Add support for unnamed (not typedef)
	containers.  Not gccxml support yet, though.

	* pybindgen/container.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [549] Add typehandler for container ref parameter

2008-08-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py: [548] Small simplification (use converter
	function)

	* pybindgen/container.py,
	* tests/footest.py: [547] Allow reverse wrappers with container return
	value to return a list instead of container object

	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [546] Add container reverse wrappers unit tests

	* pybindgen/container.py,
	* tests/foo.cc,
	* tests/footest.py: [545] Paramters of a container parameter type now
	also accept a list instead of a proper container object

	* pybindgen/container.py,
	* pybindgen/module.py: [544] Refactoring to generate most of the
	constainer construction logic as a type convertion function, for
	easier reuse in type handlers.

	* pybindgen/container.py,
	* tests/footest.py: [543] Sequence constructor

2008-08-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/converter_functions.py: Added.

	* pybindgen/module.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/utils.py: Modified.

	[542] Add API to generate python-to-C convertion functions.

2008-08-15  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [541] Test container as parameter.

2008-08-14  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/container.py: Added.

	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: Modified.

	[540] Initial support for std sequence containers (limited testing /
	support, for now)

2008-08-12  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [539] operator() support in gccxml
	scanner

	* pybindgen/gccxmlparser.py: [538] When checking for output stream
	operators, match agains operator name as well, not just expected
	parameter/return types.

	* pybindgen/cppclass.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [537] Add tp_call support to the python API;
	corresponding gccxml support is TODO.

	* pybindgen/cppmethod.py: [536] Clarify custom_name vs
	custom_template_method_name in the api docs.

2008-08-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [535] Remove leftover debug code

2008-08-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/pytypeobject.py: Added.

	* pybindgen/cppclass.py: Modified.

	[534] Factor out the generation of the type structure away from
	cppclass into a separate class PyTypeObject, for better code reuse.

2008-08-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/utils.py: [533] Fix bad PY_VERSION_HEX values.

	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [532] Templated functions tests and bug fixes.

2008-08-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [531] typo

2008-08-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [530] Add annotations support for
	'unblock_threads'

	* pybindgen/cppmethod.py: [529] more bug fixing (return without
	cleanup)

	* pybindgen/cppmethod.py,
	* pybindgen/typehandlers/base.py: [528] bug fixes (GIL, cleanup
	actions ordering)

	* pybindgen/typehandlers/base.py,
	* pybindgen/utils.py: [527] Make the generated reverse wrappers
	(virtual methods) python thread safe, i.e. they now acquire / release
	the Python GIL when called from C/C++ code, but only if Python
	threading was initialized (PyEval_ThreadsInitialized).

2008-08-01  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [526] Generate tp_hash for CppClass

2008-07-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/gccxmlparser.py,
	* tests/c-hello/hello.c,
	* tests/c-hello/hello.h,
	* tests/c-hello/hellotest.py: [525] Implement null_ok and
	default_value for CppClassPtrParameter.  Closes #252447.

	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/overloading.py: [524] Be more tolerant with unicode
	objects where str was expeced, for compatibility with pygccxml running
	with python 2.4.

	* pybindgen/typehandlers/base.py: [523] Make
	ParseTupleParameters.add_parameter return the number of the added
	parameter, for inclusion in error messages.

=== 0.9.0 ===
2008-07-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [522] Fix URL

	* NEWS,
	* README: [521] Update NEWS/README

	* pybindgen/enum.py,
	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen-auto-split.py,
	* tests/foomodulegen.py,
	* tests/footest.py: [520] Bug #247036: cannot wrap an unamed enum

	* pybindgen/cppclass.py,
	* tests/foomodulegen.py: [519] Bug #247059: API to wrap inner enums
	and classes is not intuitive

2008-07-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [518] Generate #include <typeinfo> if we're
	about to use typeid() operator

	* pybindgen/gccxmlparser.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [517] Add support for parameter default values
	specified via annotations.  Closes LP#251343.

2008-07-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [516] Add a new gccxml_options parameter
	to the gccxml module parser.

2008-07-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/inttype.py: [515] Python 2.3 does not accept
	'I' in Py_BuildValue

	* pybindgen/typehandlers/base.py,
	* tests/foomodulegen.py: [514] Use PyErr_Warn instead of PyErr_WarnEx
	in deprecations, for compatibility with Python 2.3

	* pybindgen/cppclass.py: [513] Fix reference counting problem,
	triggered by subclass-able class not being subclassed, which is
	detected only by a debug Python build.

	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/cppmethod.py,
	* pybindgen/enum.py,
	* pybindgen/function.py,
	* pybindgen/module.py,
	* pybindgen/overloading.py,
	* pybindgen/typehandlers/base.py,
	* tests/foomodulegen.py,
	* tests/foomodulegen_common.py,
	* tests/test.py: [512] Python 2.3 compatibility fixes

2008-07-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [511] Mark deprecated incref_method, ...
	parameters in the documentation

	* pybindgen/cppclass.py: [510] Fix stupid bugs in handling of
	memory_policy assertions and inheritance logic

	* pybindgen/cppattribute.py: [509] Let error handlers catch errors
	during generation of C++ class attribute wrappers

	* pybindgen/cppclass.py: [508] Make CppClass parameter memory_policy
	slightly less restrictive (allow subclass to define memory_policy as
	long as no parent class has defined it before).

	* pybindgen/__init__.py,
	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen.py,
	* tests/wscript: [507] Fix some more deprecations

	* examples/d/modulegen.py,
	* examples/e/modulegen.py: [506] Fix deprecations.

2008-07-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppclass_typehandlers.py,
	* pybindgen/gccxmlparser.py: [505] New cppclass.MemoryPolicy and
	memory_policy CppClass parameter.  Closes Bug #247536 (CppClass:
	improve consistency of memory management parameters).

	* tests/wscript: [504] Make deprecations as errors easy to turn off
	temporarily.

2008-07-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass_typehandlers.py: Added.

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py: Modified.

	[503] Split the cppclass.py file, as it was getting too big: move type
	handlers into new source file cppclass_typehandlers.py.

2008-07-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/a/wscript,
	* examples/b/wscript,
	* examples/c/wscript,
	* examples/d/wscript,
	* examples/e/wscript,
	* examples/f/wscript,
	* examples/g/wscript,
	* examples/h/wscript,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py,
	* tests/wscript: [502] For examples and unit tests, turn deprecation
	warnings into exceptions; fix cases where deprecations were being
	used.

2008-07-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [501] Better looking generated python
	code: split add_function/method/constructor calls into multiple lines
	(as suggested by Mathieu Lacage)

	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/footest.py: [500] Scan for __attribute__((deprecated)), enable
	deprecation mode when found

	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/typehandlers/base.py: [499] Add API support for
	deprecations

2008-07-15  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [498] Scan typedefs only after scanning
	for all classes.

	* pybindgen/gccxmlparser.py: [497] Scan for class typedefs.

	* pybindgen/module.py: [496] Remove debug print

	* pybindgen/cppclass.py,
	* pybindgen/module.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [495] Module.add_typedef API, implemented only for
	C++ classes/structs for now.

2008-07-14  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/inttype.py: [494] Enable handling of the
	int32_t type

2008-07-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/a/module-autogen.py,
	* examples/a/modulegen.py,
	* examples/b/modulegen.py,
	* examples/c/modulegen.py,
	* examples/d/modulegen.py,
	* examples/e/modulegen.py,
	* examples/f/modulegen.py,
	* examples/g/modulegen.py,
	* examples/h/modulegen.py,
	* tests/c-hello/hellomodulegen.py: [493] Remove deprecated calls to
	write_preamble from examples/tests

	* pybindgen/cppclass.py: [492] Add default_value_type option to
	CppClassRefParameter.  When used, code to handle default paraameters
	is generated using a temporary variable to hold the default parameter,
	instead of an expression.  Unfortunately default_value_type cannot yet
	be introspected by the gccxml scanner.

	* pybindgen/cppclass.py: [491] Ensure we do not generate helper class
	for classes with subclassing disabled

	* pybindgen/gccxmlparser.py: [490] When scanning, only explicitly set
	allow_subclassing for root classes, child classes will inherit from
	the parent.

2008-07-11  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [489] Don't output private APIs

	* pybindgen/__init__.py: [488] Link to the tutorial example online.

	* pybindgen/module.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [487] New API: Module.add_struct.

	* pybindgen/cppmethod.py: [486] Make str(CppMethod) work better with
	method objects with errors.

	* wscript: [485] copy the pre.py-doctest style instead of pre.py-src

2008-07-11  Mathieu Lacage <mathieu.lacage@sophia.inria.fr>

	* pybindgen/__init__.py: [484] Expanded tutorial.

2008-07-11  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [483] Clarify the custodian parameter of
	CppClassPtrParameter and CppClassPtrReturnValue

	* wscript: [482] Patch the generated CSS file to highlight literal
	blocks

	* pybindgen/module.py: [481] Fix epydoc cross-ref

2008-07-10  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [480] Documentation typo (thanks Mathieu)

2008-07-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [479]
	BuildValueParameters.get_parameters now accepts optional
	force_tuple_creation parameter, to add () in the returned template,
	thus forcing a tuple to be always created.

	* pybindgen/cppmethod.py: [478] Fix CppMethod.clone bug
	(is_pure_virtual was not being copied)

	* pybindgen/cppmethod.py: [477] Add a __str__ function to CppMethod,
	allowing to pretty-print a method description (great for debugging
	purposes).

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [476] Fixing bug #246069, did some bug fixing
	along the way (related to virtual method parent callers), before
	discovering the bug was invalid.

2008-07-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/module.py: [475] Add a module_file_base_name code
	generation option to toplevel modules

	* pybindgen/typehandlers/inttype.py: [474] Implement uint32_t*
	parameter handler

	* pybindgen/gccxmlparser.py: [473] Override the
	type_traits.has_public_destructor algorithm again.

	       I knew there was a reason for me having overridden it in the
	first place.  I just got the algorithm wrong the first time around.

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [472] Fix protected constructor issues.

	* pybindgen/gccxmlparser.py: [471] Use pygccxml
	type_traits.has_public_destructor function instead of our own.

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [470] Don't even try to generate code for
	CppDummyMethod's, they were never meant to generate code.

	* pybindgen/cppclass.py: [469] Generate a tp_richcompare slot function
	for each type.  For the time being it simply raises TypeError, just to
	avoid the trap of comparing objects when the default evil Python 2.x
	behaviour is to compare by wrapper pointer value.  In the future,
	wrapping C++ comparison operators will be possible.

2008-07-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/booltype.py,
	* pybindgen/typehandlers/doubletype.py,
	* pybindgen/typehandlers/floattype.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/pyobjecttype.py,
	* pybindgen/typehandlers/stringtype.py,
	* tests/foomodulegen.py,
	* tests/test-generation.py: [468] Clean up the mess that became
	registering handlers for const types; add 'constness' to type handler
	codegeneration tests.

	* tests/foomodulegen-auto.py: [467] Add a debug switch (-d) to enable
	debugger

	* tests/foo.h: [466] Change one case of unit test using std::string to
	std::string const &, just for better testing..

	* pybindgen/gccxmlparser.py,
	* tests/foo.h: [465] Fix Bug #245097: Regression: Error 'declarated_t'
	object has no attribute 'base'

2008-07-03  Mathieu Lacage  <mathieu.lacage@sophia.inria.fr>

	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [464] Fix problem with class registration when an
	inner namespace class has a class defined in an outer namespace as
	base class.

	* tests/foo.h,
	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py,
	* tests/foomodulegen3.py,
	* tests/foomodulegen4.py: [463] Cleanups.

2008-07-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [462] CppClass.add_output_stream() documentation
	and unit tests.

	* pybindgen/typehandlers/inttype.py: [461] Minor fixes

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [460]
	s/operator_os/output_stream_operator/ (more readable)

2008-07-02  Mathieu Lacage  <mathieu.lacage@sophia.inria.fr>

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [459] Add support for scanning for output
	stream operator functions, and wrap them as tp_str of each class.

2008-06-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [458] CppClassRefParameter should check if
	class is constructible only when the parameter has a default value.

	* pybindgen/typehandlers/inttype.py: [457] Handle uint64_t&

2008-06-29  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/inttype.py: [456] Missing transfer_ownership
	constructor parameter in integer pointer type handlers

	* pybindgen/gccxmlparser.py: [455] Use patched pygccxml remove_xxx
	functions, to work around the problem of pygccxml removing the
	typedefs and returning the raw type (e.g. unsigned long int instead of
	uint64_t).

	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/doubletype.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/stringtype.py: [454] Misc type handler
	changes to support detailed type traits.

	* pybindgen/gccxmlparser.py: [453] Get detailed type traits for all
	types, not just C++ classes.  For example, should now be able to
	remove 'const' from 'const int'.

2008-06-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppmethod.py,
	* pybindgen/function.py: [452] Allow add custom methods/functions with
	wrapper_body=None, useful when the wrapper body is defined in another
	compilation unit.

2008-06-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/floattype.py,
	* tests/foo.cc,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [451] Bug #242285: Impossible to use a float*
	parameter in a function or method to pass an array of floats.

	* pybindgen/module.py: [450] Fix typo

	* pybindgen/module.py: [449] Add support for a Module.body code sink

	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/enum.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/overloading.py,
	* pybindgen/settings.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/utils.py,
	* tests/foomodulegen4.py,
	* tests/wscript: [448] Experimental multi-section (split generated C
	code over multiple files) code

2008-06-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/ctypeparser/__init__.py: [447] remove todo
	item already done

2008-06-15  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/inttype.py: [446] add 'unsigned short'
	aliases for uint16_t

	* pybindgen/typehandlers/ctypeparser/__init__.py: [445] Add a
	CType.remove_modifiers() method

	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/booltype.py,
	* pybindgen/typehandlers/doubletype.py,
	* pybindgen/typehandlers/floattype.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/stringtype.py,
	* tests/foomodulegen_common.py,
	* tests/test.py: [444] Run all type strings through the newly added
	'type normalization function' before every type registration and
	lookup.

	This change can have noticeable impact, especially on type
	transformations, but is for the best.  Now the canonical string
	representation for 'Foo*' is 'Foo *', and for 'const Foo*' it is 'Foo
	const *'.

	* pybindgen/cppclass.py: [443] missing const_casts; typo

2008-06-14  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/ctypeparser/__init__.py: [442] Handle
	parenthesis, so that function pointer types can be properly handled.

2008-06-14  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/ctypeparser,
	* pybindgen/typehandlers/ctypeparser/__init__.py,
	* pybindgen/typehandlers/ctypeparser/tokenizer.py: Added.

	* pybindgen/wscript,
	* tests/test.py: Modified.

	[441] Add a C type parser and function to normalize type string
	representations.

2008-06-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/stringtype.py,
	* tests/test.py: [440] Regarding [Bug 238455], check that char* types
	are being registered.

2008-06-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/module.py: [439] Define stack_where_defined much earlier

	* pybindgen/cppclass.py,
	* pybindgen/module.py: [438] Add a 'stack_where_defined' to all added
	wrappers; this way it is possible, in the error handler, to tell the
	user exactly where is the code that causes the failure.

	* pybindgen/gccxmlparser.py: [437] Add support for a 'pygen_sink'
	annotation, applicable to anything, as a convenient way to generate a
	comment right before an API definition in generated python scripts.

	* pybindgen/gccxmlparser.py: [436] Check for annotations and run
	pre_scan hooks for enumerations also

	* pybindgen/gccxmlparser.py: [435] More detailed hierarchy of warnings
	categories.

	* pybindgen/gccxmlparser.py: [434] Define a separate ScanWarning
	category to be used by pybindgccxml.ModuleParser, to allow filtering
	warnings.

2008-06-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* tests/c-hello/hello.c,
	* tests/c-hello/hello.h: [433] [bug #237524] Avoid using const_cast
	and reinterpret_cast, use C-style casts instead, so that the generated
	code compiles with a pure C compiler.

2008-06-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* tests/foo.h,
	* tests/foomodulegen.py,
	* tests/footest.py: [432] Support anonymous structures (LP#237054)

	* pybindgen/typehandlers/inttype.py: [431] Finish support for int16_t
	/ short int

	* pybindgen/typehandlers/stringtype.py: [430] bug fix

2008-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen-auto-split.py: [429] Implement the
	section.local_customizations_module option

	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen-auto-split.py: [428] Use a proper PygenSection
	class instead of tuple, to denote section information

	* pybindgen/cppclass.py: [427] Guard against code generation errors
	while adding a method object

2008-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* HACKING: Added.

	* README: Modified.

	[426] HACKING file

2008-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/__init__.py,
	* pybindgen/gccxmlparser.py: [425] documentation work

2008-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/a/module-autogen.py,
	* examples/a/module-autoscan.py: Added.

	* examples/a/wscript: Modified.

	[424] Add gccxml-based variants to the 'a' example.

2008-06-01  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foomodulegen-auto-split.py,
	* tests/foomodulegen4.py: Added.

	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foomodulegen3.py,
	* tests/footest.py,
	* tests/wscript,
	* wscript: Modified.

	[423] Add support for splitting the generated python script into
	sections (python submodules) basedon on some criteria.

2008-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/function.py: [422] Don't use custom_name as basis for
	wrapper function name.

2008-05-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [421] Add the dummy methods to helper
	classes as well, so that unwrapped pure virtual methods are detected
	and the helper class disabled

	* pybindgen/cppmethod.py: [420] bug fix

	* pybindgen/__init__.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/utils.py,
	* tests/foomodulegen3.py,
	* tests/test.py: [419] Delayed binding of parameter and return value
	specifiers, and improved error handling.

2008-05-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [418] Filter out duplicated helper class
	constructors

2008-05-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [417] Remove a couple of FIXME exceptions

	* pybindgen/module.py: [416] Add a Module.after_forward_declarations
	code sink, for writing custom code that needs to go after the forward
	declarations but before the wrappers.

	* pybindgen/module.py: [415] Fix bug with duplicated #include
	directives being generated, each include times the number of
	submodules+1

2008-05-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppmethod.py: [414] Fix buggy CppMethod.matches_signature

	* pybindgen/cppmethod.py: [413] Don't call a constructor, from a
	constructor wrapper, if it is not public

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [412] Add virtual methods from parent
	classes for each class' helper class

	* pybindgen/cppclass.py,
	* pybindgen/overloading.py: [411] Avoid generating code that doesn't
	compile, when dealing with a combination of implicit conversions +
	abstract classes

2008-05-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/b/modulegen.py,
	* examples/d/modulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen.py: [410] CppClass.add_*_attribute API change.

	* examples/b/modulegen.py,
	* examples/c/modulegen.py,
	* examples/d/modulegen.py,
	* examples/e/modulegen.py,
	* examples/f/modulegen.py,
	* examples/h/modulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foomodulegen.py,
	* tests/test-generation.py: [409] Update tests/examples to use new
	add_constructor API

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [408] New constructor API

	* pybindgen/cppclass.py: [407] doc fix

2008-05-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/c/modulegen.py,
	* examples/e/modulegen.py,
	* examples/f/modulegen.py,
	* examples/h/modulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen.py,
	* tests/foomodulegen_common.py: [406] CppClass.add_method
	simplifications

	* pybindgen/module.py: [405] remove FIXME

	* examples/a/modulegen.py,
	* examples/b/modulegen.py,
	* examples/d/modulegen.py,
	* examples/g/modulegen.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foomodulegen.py,
	* tests/foomodulegen_common.py: [404] Module.add_function API
	simplification

	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* tests/foomodulegen.py: [403] Allow None to mean
	ReturnValue.new('void') for functions and methods.

	* examples/c/modulegen.py,
	* examples/e/modulegen.py,
	* examples/f/modulegen.py,
	* examples/h/modulegen.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen.py: [402] CppMethod returntype,name parameters
	swapped (Mathieu); add more documentation.

2008-05-11  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/function.py: [401] Add a backward API compatibility for
	the previous Function constructor API change.

	* examples/a/modulegen.py,
	* examples/b/modulegen.py,
	* examples/d/modulegen.py,
	* examples/e/modulegen.py,
	* examples/g/modulegen.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen.py,
	* tests/test-generation.py: [400] API change: Function(retval, name,
	params) now becomes Function(name, retval, params), as suggested by
	Mathieu Lacage.

	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foomodulegen.py: [399] Same thing for add_enum

	* examples/b/modulegen.py,
	* examples/c/modulegen.py,
	* examples/d/modulegen.py,
	* examples/e/modulegen.py,
	* examples/f/modulegen.py,
	* examples/h/modulegen.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/foomodulegen.py: [398] ModuleBase.add_class directly creates
	the class now (Mathieu's API suggestion)

	* pybindgen/module.py: [397] Turn the documentation examples into
	doctests

	* pybindgen/module.py: [396] Documentation (module)

	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py: [395] Split the class Module into ModuleBase,
	Module, and SubModule (should address some concerns by Mathieu Lacage)

	* wscript: [394] We require Python >= 2.3, not 2.4.

2008-05-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foomodulegen3.py,
	* tests/foomodulegen_common.py: Added.

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* tests/c-hello/hellotest.py,
	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py,
	* tests/footest.py,
	* tests/wscript,
	* wscript: Modified.

	[393] merge from the gccxml-to-python branch

2008-05-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [391.1.30] pygen implicit conversions

	* pybindgen/gccxmlparser.py: [391.1.29] pygen implicit constructor

	* wscript: [391.1.28] Hide the --generate-version option if not
	running from a bzr branch

	* wscript: [391.1.27] Add --examples option (only compiles examples if
	this option is given); add a PyBindGen option group, for prettier help
	output.

2008-05-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/g,
	* examples/g/g.cc,
	* examples/g/g.h,
	* examples/g/g_test.py,
	* examples/g/modulegen.py,
	* examples/g/wscript,
	* examples/h,
	* examples/h/h.cc,
	* examples/h/h.h,
	* examples/h/h_test.py,
	* examples/h/modulegen.py,
	* examples/h/wscript: Added.

	* examples/wscript: Modified.

	[391.1.26] merge

2008-05-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foomodulegen3.py: Added.

	[391.1.25] missing file :-/

2008-05-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [391.1.24] ignore methods that are
	private and not virtual or pure virtual, as they do not affect the
	bindings in any way and only clutter the generated python script.

	* pybindgen/gccxmlparser.py: [391.1.23] Always use Parameter.new and
	ReturnValue.new, to make the generated python code simpler

	* pybindgen/gccxmlparser.py: [391.1.22] pygen function-as-method and
	function-as-constructor

	* pybindgen/gccxmlparser.py: [391.1.21] pygen enums

	* pybindgen/gccxmlparser.py: [391.1.20] 'pygen' plain functions

	* pybindgen/gccxmlparser.py: [391.1.19] generate python code when
	abstract classes are detected

	* tests/wscript: [391.1.18] Fix foo3 module build system integration

	* pybindgen/module.py: [391.1.17] Allow changing module name after it
	is created

	* pybindgen/gccxmlparser.py: [391.1.16] missing register_methods()
	call

2008-05-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/foomodulegen_common.py: Added.

	* tests/foomodulegen-auto.py,
	* tests/foomodulegen.py: Modified.

	[391.1.15] Factor out the common portions of foomodulegen and
	foomodulegen-auto into a common python module

2008-05-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [391.1.14] stupid bug

	* tests/foomodulegen-auto.py,
	* tests/footest.py,
	* tests/wscript,
	* wscript: [391.1.13] Integrate generation of python scripts into unit
	testing framework.  Naturally not all tests pass because work is not
	yet complete.

	* pybindgen/gccxmlparser.py: [391.1.12] python generation now takes
	care of class methods, constructors, and member variables; missing:
	functions

	* pybindgen/cppclass.py: [391.1.11] Add a CppClass mangled_full_name
	attribute.

2008-05-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [391.1.10] pygen: register types of
	nested modules

	* pybindgen/gccxmlparser.py: [391.1.9] make pylint a little happier

	* pybindgen/gccxmlparser.py,
	* tests/foomodulegen-auto.py,
	* tests/wscript: [391.1.8] First small steps to generate python
	scripts.. for now only classes at the root namespace..

2008-05-01  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/c-hello/hellotest.py,
	* tests/footest.py: [391.1.7] Fix the built test modules path (waf
	check was testing installed modules!)

	* pybindgen/cppclass.py: [391.1.6] register class aliases with the
	module type registry as well

	* pybindgen/module.py: [391.1.5] refactoring

	* pybindgen/module.py: [391.1.4] Fix Module.cpp_namespace_prefix so
	that it never starts with ::

2008-04-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/module.py: [391.1.3] Allow also accessing enums/classes of
	nested modules from the main module

	* wscript: [391.1.2] clean files even when they are not to be compiled

	* pybindgen/module.py: [391.1.1] Add Module support for easy accessing
	classes and enums by name

2008-05-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/g,
	* examples/g/g.cc,
	* examples/g/g.h,
	* examples/g/g_test.py,
	* examples/g/modulegen.py,
	* examples/g/wscript,
	* examples/h,
	* examples/h/h.cc,
	* examples/h/h.h,
	* examples/h/h_test.py,
	* examples/h/modulegen.py,
	* examples/h/wscript: Added.

	* examples/wscript: Modified.

	[392] From Mathieu Lacage: a couple more examples (nested C++
	namespaces, nested classes)

2008-04-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/a/wscript,
	* examples/b/wscript,
	* examples/c/wscript,
	* examples/d/wscript,
	* examples/e/wscript,
	* examples/f/wscript,
	* tests/c-hello/wscript,
	* tests/wscript: [391] Remove the workarounds for waf bug #37

	* wscript: [390] Generate version before API docs

	* pybindgen/__init__.py: [389] Short introduction sections

	* examples/a/modulegen.py,
	* examples/b/modulegen.py,
	* examples/c/modulegen.py,
	* examples/d/modulegen.py,
	* examples/e/modulegen.py,
	* examples/f/modulegen.py: [388] Use Module.add_include

2008-04-29  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [387] Fix the documentation of __version__

	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/enum.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/settings.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/pyobjecttype.py: [386] documentation work

2008-04-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/d,
	* examples/d/d.cc,
	* examples/d/d.h,
	* examples/d/d_test.py,
	* examples/d/modulegen.py,
	* examples/d/wscript,
	* examples/e,
	* examples/e/e.cc,
	* examples/e/e.h,
	* examples/e/e_test.py,
	* examples/e/modulegen.py,
	* examples/e/wscript,
	* examples/f,
	* examples/f/f.cc,
	* examples/f/f.h,
	* examples/f/f_test.py,
	* examples/f/modulegen.py,
	* examples/f/wscript: Added.

	* examples/wscript: Modified.

	[385] Add the d, e, and f examples from Mathieu

2008-04-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/utils.py: [384] Missing stddef.h import to get the
	definition of offsetof

	* pybindgen/cppclass.py: [383] Remove the typeid stuff from
	tp_traverse; it does not seem to be needed anymore (don't remember why
	I added it in the first place...).

2008-04-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/c,
	* examples/c/c.cc,
	* examples/c/c.h,
	* examples/c/c_test.py,
	* examples/c/modulegen.py,
	* examples/c/wscript: Added.

	* examples/wscript: Modified.

	[382] Add Mathieu's 'c' example

2008-04-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [381] fix a small bug

2008-04-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/b,
	* examples/b/b.cc,
	* examples/b/b.h,
	* examples/b/b_test.py,
	* examples/b/modulegen.py,
	* examples/b/wscript: Added.

	* examples/wscript: Modified.

	[380] Add the 'b' example from Mathieu

2008-04-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/a,
	* examples/a/a.cc,
	* examples/a/a.h,
	* examples/a/a_test.py,
	* examples/a/modulegen.py,
	* examples/a/wscript: Added.

	* examples/wscript: Modified.

	[379] Add the 'a' example from Mathieu

2008-04-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/wscript,
	* tests/wscript,
	* wscript: Modified.

	* examples/c-hello: Renamed to tests/c-hello.
	* examples/foo.cc: Renamed to tests/foo.cc.
	* examples/foo.h: Renamed to tests/foo.h.
	* examples/foomodulegen-auto.py: Renamed to tests/foomodulegen-
	  auto.py.
	* examples/foomodulegen.py: Renamed to tests/foomodulegen.py.
	* examples/footest.py: Renamed to tests/footest.py.

	[378] Move the former 'examples' into tests/, as they evolved to
	become more unit tests than examples.

2008-04-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/c-hello/hellomodulegen.py,
	* examples/foomodulegen-auto.py,
	* examples/foomodulegen.py,
	* wscript: [377] Add rules for generating API docs (epydoc).

2008-04-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [376] Tweak PYTHONPATH to consider latest WAF 1.4.1 python
	support changes.

2008-04-26  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/c-hello/wscript,
	* examples/wscript: [375] Fix a WAF version detection bug

2008-04-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [374] Add missing support for the combination
	of CppClass parameter wich has implicit conversions (to it) and also a
	default value.

2008-04-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/module.py,
	* pybindgen/utils.py: [373] Try to convert unicode objects to str if
	they're ascii, rather than asserting they're already str objects.

2008-04-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/base.py: [372] Handle optional parameter
	followed by non-optional better.

	* pybindgen/cppclass.py: [371] More correct handling of default values

	* pybindgen/typehandlers/stringtype.py: [370] Implement std::string
	default value.

	* README,
	* examples/c-hello/wscript,
	* examples/wscript: [369] Make it work with both WAF trunk and WAF
	1.3.2

2008-04-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [368] Support C++ class reference
	parameters with default values (crazy as it may sound)

	* wscript: [367] Don't run gccxml based unit tests when gccxml is not
	available.

2008-04-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/c-hello/wscript,
	* examples/wscript,
	* wscript: [366] Some wscript tweaks to make it build with waf trunk
	(tested with rev. 3169)

2008-04-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [365] Implement parameter default value for
	CppClass parameters

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/doubletype.py,
	* pybindgen/typehandlers/inttype.py: [364] Add support for parameter
	optional values, so far implemented only for int and double parameter
	types.

	* pybindgen/typehandlers/base.py: [363] Emit a warning giving
	information on which type handler was being constructed when a
	TypeError exception is raised inside Parameter.new() or
	ReturnValue.new().

2008-03-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [362] Remove the silly "Cannot add virtual
	methods if subclassing support was not enabled for this class"
	restriction.

	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py: [361] Improved algorithm for deciding if
	a class constructor can be generated due to pure virtual functions.

2008-03-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppmethod.py: [360] Add ability to add custom C++ class
	constructors.

	* pybindgen/cppclass.py: [359] Add CppClass.is_subclass method.

2008-03-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [358] Handle the utils.SkipWrapper exception
	when genering the constructor

	* pybindgen/cppclass.py: [357] Check for the have_pure_virtual_methods
	flag recursively in parent classes.

	* pybindgen/cppclass.py,
	* pybindgen/overloading.py,
	* pybindgen/typehandlers/base.py: [356] Support adding constructors
	which generate an error exception (and therefore should be just
	gracefully ignored).

	* pybindgen/cppclass.py: [355] Apparently, in C++ implicit conversions
	are not transitive.

2008-03-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/overloading.py,
	* pybindgen/typehandlers/base.py: [354] Re-implement implicit
	conversions using a non-combinatorial approach, for greater
	efficiency.

2008-03-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/overloading.py: [353] Add __repr__ to CppClass

	* pybindgen/gccxmlparser.py: [352] template typedefs are not supposed
	to be incomplete types

	* pybindgen/utils.py: [351] Handle NotSupportedError pybindgen errors
	gracefully.

	* pybindgen/gccxmlparser.py: [350] Fix bug with casting operators to
	non-class types.

2008-03-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/enum.py,
	* pybindgen/gccxmlparser.py: [349] C related bug fixes

	* examples/c-hello/hello.c,
	* examples/c-hello/hello.h: [348] Test the "typedef int Bool"
	handling.

2008-03-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [347] handle "typedef int Something;"

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [346] minor bug fixes

2008-03-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* NEWS: [345] Add news item (improved C support)

	* pybindgen/cppclass.py: [344] Cleanup delete_code generation, fix
	unused tmp variable.

	* examples/c-hello/hellotest.py: [343] fix the unit tests

	* examples/c-hello/hellomodulegen.py: [342] cleanup

	* examples/c-hello/hellomodulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [341] Add support for changing the name
	by which a class is registered in python side

2008-03-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/c-hello/hellotest.py: Added.

	* examples/c-hello/hellomodulegen.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/stringtype.py,
	* wscript: Modified.

	[340] is_constructor_of annotation; unit tests (not fully working yet)

2008-03-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [339] Add support for c-function-as-
	constructor (for is_constructor_of annotation).

	* examples/c-hello/hello.h,
	* examples/c-hello/hellomodulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [338] Refactoring to support C structs as
	classes (typedef struct _Foo Foo).  Work in progress...

	* pybindgen/gccxmlparser.py: [337] Add support for pre/post scan
	hooks.

2008-02-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/c-hello/hello.c,
	* examples/c-hello/hello.h,
	* examples/c-hello/wscript: [336] Add a sample C API based on
	functions operating over structures in a object oriented way; goal is
	to support this API in the future (not yet done)

	* README: [335] Update README

2008-02-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/c-hello,
	* examples/c-hello/hello.c,
	* examples/c-hello/hello.h,
	* examples/c-hello/hellomodulegen.py,
	* examples/c-hello/wscript: Added.

	* examples/wscript,
	* wscript: Modified.

	[334] Add a simple pure C example module.

2008-02-10  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* README: [333] cleanup

	* examples/foomodulegen.py,
	* pybindgen/cppclass.py: [332] Add support for helper class hook
	functions and adding custom methods to helper classes.

	* examples/wscript: [331] Build extensions with the 'plugin' object
	type; should fix Mac OS X build.

2008-02-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* NEWS: [330] Update NEWS

	* examples/foo.h,
	* examples/foomodulegen-auto.py,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [329] Add support for customising an
	'instance creation function', for cases when creating instances with
	new ClassName does not work (*cough*ns-3*cough*).

	* pybindgen/wscript,
	* wscript: [328] cleanup

	* wscript: [327] Improve unit tests printed messages

	* tests/wscript,
	* wscript: [326] Make sure the pure python unit tests only run at the
	end of the build.  Makes 'waf check' work even if the project was not
	previously built.

2008-01-26  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* examples/foo.h,
	* tests/test-generation.py: [325] MSVC compatibility fixes.

2008-01-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppmethod.py: [324] Fix typo in virtual method wrapper
	name

2008-01-24  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* NEWS,
	* README: [323] Update NEWS and README

	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/enum.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/codesink.py,
	* pybindgen/utils.py: [322] Fix incompatibilities with pygccxml 0.9
	and Python 2.4 (I was testing with pygccxml HEAD and Python 2.5).

	* examples/wscript,
	* tests/wscript,
	* wscript: [321] fix some build script bugs

	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py: [320] Fix try: .. except: ..
	finally: .. constructs to make them compatible with Python < 2.5.

2008-01-24  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* waf.bat: Added.

	[319] Add batch file for Windows users.

2008-01-14  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/enum.py: [318] Fix the generation of the Enum full_name to
	ensure it starts with ::, to be inline with the last changeset.

2008-01-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [317] Fix lookup of enum types; minor bug
	fix (forgot to check for pure virtual method that couldn't be
	generated, in one place)

2008-01-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [316] Don't add :: prefix to C++
	fundamental types

	* pybindgen/cppclass.py: [315] Discover the typeid map variable name
	as early as possible

	* pybindgen/cppclass.py,
	* pybindgen/module.py,
	* tests/test-generation.py: [314] Generate the typeid maps in the
	forward declarations section.

	* pybindgen/module.py: [313] Allow calling
	Module.generate_forward_declarations early, make a subsequent call to
	Module.generate() not generate the declarations again.

	* pybindgen/typehandlers/base.py: [312] fix bad assertion

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [311] Register class aliases also in the
	low level typehandlers.base type registry, in addition to the
	gccxmlparser one.

	* pybindgen/gccxmlparser.py: [310] Don't restrict exported symbols.

2008-01-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [309] Split the
	gccxmlparser.ModuleParser.parse() method into several smaller methods,
	to allow greater customization and flexibility.

	* pybindgen/gccxmlparser.py: [308] cleanup

2008-01-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [307] Don't wrap 'peekref' methods

	* pybindgen/cppclass.py: [306] Fix issue with templated classes being
	registered with invalid name.

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [305] Add general support for templated
	classes (previously only classes with non-templated typedefs were
	allowed).

	* pybindgen/overloading.py: [304] Fix method def flags handling of the
	aggregator wrapper generated by overloading.py

2008-01-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foomodulegen-auto.py,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py: [303] Add support for custom method wrappers.

	* examples/foomodulegen-auto.py,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/overloading.py,
	* pybindgen/typehandlers/base.py: [302] Add support for custom
	function wrappers.

2008-01-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [301] Fix bug: printing bogus error
	message for virtual methods returning void/None.

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [300] Add peekref_method support, to
	solve an issue related to virtual methods, user classes, and reference
	counting.

	* pybindgen/cppmethod.py: [299] In classes' tp_init wrappers, create
	an instance of the helper class only if called from a subclass, else
	create a regular pure C++ original class.

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [298] More effectively disable the helper
	class when pure virtual methods are found that cannot be generated.

	* pybindgen/cppmethod.py: [297] Don't call parent virtual if it is
	private

	* pybindgen/cppclass.py: [296] Don't create a helper class if
	is_singleton is true (because the destructor will likely be private)

	* pybindgen/gccxmlparser.py: [295] cleanup

	* pybindgen/gccxmlparser.py: [294] Don't crash on Class** types

	* examples/foo.h,
	* examples/foomodulegen.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py: [293] Support protected constructors

	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py: [292] Add support for protected/private
	virtual methods.

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

	* pybindgen/cppclass.py: [291] Remove the debug commented fprintf's

	* pybindgen/module.py: [290] Module init functions should just return
	on error, not call PyErr_Print()

2007-12-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [289] Make the tp_name slot of classes
	contain the full dotted notation of the type name, in order to pydoc
	not ignore the classes.

2007-12-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [288] Using the helper class as replacement
	for the real class, when not dealing with a real subclass, is nothing
	but trouble.

	* examples/foomodulegen.py,
	* pybindgen/cppclass.py: [287] Don't inherit default constructors by
	default; the gccxml frontend already does

	that by other means; now the caller has to call a method if he wants
	this behaviour.

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [286] Use CppClass.pystruct instead of name
	wherever possible to avoid name conflicts.

	* pybindgen/gccxmlparser.py: [285] Don't wrap nested classes or enums
	that are private.

	* pybindgen/cppclass.py,
	* pybindgen/enum.py,
	* pybindgen/gccxmlparser.py: [284] Fix problems with nested
	classes/enums and name clashes

	* pybindgen/cppclass.py: [283] Fix accidental commit error.

2007-12-28  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/enum.py,
	* pybindgen/gccxmlparser.py,
	* tests/test-generation.py: [282] Nested (inside classes) classes and
	enums.

	* pybindgen/cppattribute.py: [281] Fix bug in
	CppInstanceAttributeSetter

	* pybindgen/typehandlers/inttype.py: [280] more integer type support..

	* pybindgen/typehandlers/inttype.py: [279] Match int pointers with
	const; check that direction is given, only guess in the case of const
	int *.

	* pybindgen/typehandlers/inttype.py: [278] Add 'long long unsigned
	int' as alias to uint64_t

	* pybindgen/typehandlers/inttype.py: [277] Add some support for
	int8_t* and uint8_t* parameters.

	* pybindgen/typehandlers/inttype.py: [276] Add support for the type
	'int64_t' (aka long long)

	* pybindgen/gccxmlparser.py,
	* pybindgen/overloading.py,
	* pybindgen/typehandlers/base.py: [275] Detect the problem of adding a
	overloaded method with multiple method flags (e.g. instance method vs
	static method with the same name)

2007-12-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: [274] Support annotation to ignore whole
	classes.

	* pybindgen/cppclass.py: [273] Get function-as-method working again
	(had been recently broken).

	* examples/foo.h,
	* pybindgen/overloading.py: [272] Implicit conversions for references
	only work when the references are const.

	* pybindgen/gccxmlparser.py: [271] Fix bad annotations error message

	* pybindgen/gccxmlparser.py: [270] Don't traceback when
	template_instance_names is not given

2007-12-27  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py: [269] Add support for custom names of
	template instantiation methods.

2007-12-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/utils.py: [268] Fix name mangling to also replace : with _

2007-12-26  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/overloading.py: [267] Support implicit conversions with
	pass-by-reference parameters.

	* pybindgen/typehandlers/inttype.py: [266] Add UInt16Param

2007-12-26  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/typehandlers/inttype.py: [265] Add support for the
	unsigned long long / uint64_t type

	* pybindgen/gccxmlparser.py: [264] Add support for typedefs to
	templated classes.

	* pybindgen/cppmethod.py: [263] in void return virtual method reverse
	wrappers, don't call the parent virtual if pure virtual

	* pybindgen/cppclass.py: [262] don't generate a 'parent caller' method
	if it's a pure virtual method.

	* pybindgen/cppclass.py: [261] Bug fix: don't write declaration for a
	virtual method that cannot be generated.

	* pybindgen/typehandlers/booltype.py: [260] bool type fixes

	* pybindgen/typehandlers/base.py: [259] Avoid conflicts of local
	variables with ForwardWrapper parameters.

	* pybindgen/cppclass.py: [258] Fix typo.

	* examples/foo.h: [257] Fix 'class has virtual functions but non-
	virtual destructor' warning

2007-12-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [256] bug fix related to excluded parent
	callers

	* pybindgen/cppclass.py: [255] re-register the class type handlers
	with class full name, once it becomes known

	* tests/test.py: [254] update test to new exception

	* pybindgen/cppclass.py: [253] const fixes

	* pybindgen/cppmethod.py: [252] s/Py_Fatal/Py_FatalError/

	* pybindgen/cppmethod.py: [251] Fix string interpolation error-

	* pybindgen/utils.py: [250] Don't catch TypeError, ValueError

	* pybindgen/cppclass.py: [249] Support a is_const optional parameter
	in CppClassReturnValue

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/base.py: [248] Don't raise TypeError except
	for real programming errors, and don't catch it either (avoids the
	error hiding anti-pattern).

	* pybindgen/cppclass.py: [247] Completely disable (for real, this
	time) the helper class when a pure virtual method is missing.

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/typehandlers/base.py: [246] Fix some problems with error
	return path of the virtual method proxies.

	* pybindgen/gccxmlparser.py: [245] Check if instance/class attributes
	are const.

	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py: [244] static attribute bug fix

	* pybindgen/gccxmlparser.py: [243] Notice private trivial and copy
	constructors.

2007-12-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/typehandlers/base.py: [242]
	'REQUIRES_ASSIGNMENT_CONSTRUCTOR' fixes

	* pybindgen/cppmethod.py: [241] Add missing braces in generated C
	code.

	* pybindgen/gccxmlparser.py: [240] Notice private pure virtual
	methods.

	* pybindgen/gccxmlparser.py: [239] Make the gccxml scanner add
	implicit copy constructors when not explicitly declared.

	* pybindgen/cppclass.py: [238] missing Py_XDECREF...

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py: [237] Make the constructors of the helper
	class exactly the same as in the base class (substitution principle).

2007-12-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/gccxmlparser.py: [236] Detect more cases where code was
	being generated which wouldn't compile due to missing virtual method
	implementation; handle them gracefully.

	* pybindgen/cppclass.py: [235] const fixes

	* pybindgen/cppmethod.py: [234] Put spaces inside the *_cast< ... >
	braces, to make the C++ compiler happier (take 2).

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [233] Add correct contextual information
	to virtual method generation errors.

	* pybindgen/cppclass.py: [232] Put spaces inside the *_cast< ... >
	braces, to make the C++ compiler happier.

	* pybindgen/cppclass.py,
	* pybindgen/overloading.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/codesink.py: [231] Error handling for virtual
	methods.

	* examples/foo.h,
	* pybindgen/gccxmlparser.py: [230] improved error handling in
	gccxmlparser

	* pybindgen/overloading.py: [229] better error handling of overloaded
	wrappers

	* examples/foo.h,
	* examples/foomodulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/module.py,
	* pybindgen/settings.py,
	* pybindgen/utils.py: [228] Add a framework for letting the user
	handle errors of functions and methods but possibly just ignore them
	and move on.

2007-12-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [227] Raise CodeGenerationError, not
	ValueError, where appropriate.

	* pybindgen/cppclass.py: [226] honor CppClas.cannot_be_constructed
	more thoroughly

	* pybindgen/gccxmlparser.py: [225] look for protected pure virtual
	functions, disable the class constructor if any is found

	* examples/foo.h,
	* pybindgen/gccxmlparser.py: [224] Add 'ignore' annotation support,
	allowing to ignore functions and methods.

2007-12-21  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/utils.py: [223] handle template arguments with spaces
	(like 'long int')

	* examples/foo.cc,
	* examples/foo.h,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/utils.py: [222] scan for and support functions and methods
	with explicit template parameters

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/typehandlers/base.py: [221] handle C++ class return values
	by inline 'FooBar retval = something(...);', for classes that have a
	private constructor and a friend factory function

2007-12-20  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/overloading.py,
	* pybindgen/typehandlers/base.py: [220] Add support for overloaded
	virtual methods.

	* pybindgen/overloading.py: [219] fix a bug in an assertion expression

	* pybindgen/gccxmlparser.py: [218] Add whitelist_paths and
	include_paths options to gccxml parser

	* pybindgen/cppclass.py: [217] handle Class& return values (same as
	value return)

	* pybindgen/gccxmlparser.py: [216] gccxml 0.9, unlike 0.7, does not
	explicitly report inheritted trivial constructors; thankfully pygccxml
	comes to the rescue!

2007-12-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* tests/test-generation.py: [215] fix also the generation unit test

	* pybindgen/cppattribute.py,
	* pybindgen/cppmethod.py,
	* pybindgen/typehandlers/base.py: [214] Silence GCC 4.2 warnings:
	'warning: deprecated conversion from string constant to ‘char*’'

=== 0.8.0 ===
2007-12-01  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* NEWS: [213] Update NEWS for the new release

	* examples/wscript,
	* wscript: [212] Only run the autogeneration tests if gccxml and
	pygccxml are detected in the system.

	* examples/foo.h: [211] Make one of the annotations multi-line, for
	demonstration purposes.

	* examples/foo.h,
	* pybindgen/gccxmlparser.py: [210] Change the annotations magic marker
	from -*- to -#-, to avoid confusion with emacs modelines; Add support
	for annotations inside C style comments (/* -#- ... -#- */).

2007-11-26  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.h,
	* pybindgen/gccxmlparser.py: [209] Add support for a
	automatic_type_narrowing annotation

	* pybindgen/gccxmlparser.py: [208] Autodetect implicit conversions.

2007-11-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.h,
	* pybindgen/gccxmlparser.py: [207] Add annotation to override function
	name

	* examples/foo.h,
	* pybindgen/gccxmlparser.py: [206] function as method annotation

	* examples/foo.h: [205] Add more annotations in the example header
	file.

	* pybindgen/gccxmlparser.py: [204] Add support for the 'custodian'
	annotation.

	* pybindgen/typehandlers/base.py: [203] Fix a 'double const' problem.

	* pybindgen/gccxmlparser.py: [202] Warn about unused annotations.

	* examples/foo.h: [201] Add some of the missing annotations

	* pybindgen/typehandlers/stringtype.py: [200] Add some more string
	alias type names, to make it compatibly with pygccxml types.

2007-11-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foomodulegen-auto.py: Added.

	[199] Missing file from previous commit (autoscan unit test)

2007-11-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [198] In CppClassPtrReturnValue, check for
	NULL pointer, map into None

	* pybindgen/gccxmlparser.py: [197] make warnings include the header
	file name/line being scanned when appropriate, instead of pointing to
	pybindgen sources

	* examples/footest.py,
	* examples/wscript,
	* wscript: [196] Unit test automatic scanning and generation of the
	example API.

	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py: [195] Fix bug in gccxml scanning of submodules

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/typehandlers/base.py: [194] Write the helper class for
	supporting virtual methods in two stages.

	Only a simple class declaration/definition is generated in the
	"forward declarations" section, while the method bodies are generated
	later.  This avoids problems of the helper class needing to access
	Python object structures that are going to be defined later.  Some
	refactoring involved to accomplish this.

2007-11-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [193] fix typo

2007-11-23  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* tests/test-generation.py,
	* tests/test.py: [192] Fix unit tests

	* pybindgen/enum.py: [191] Strip leading :: from the enum full_name

	* pybindgen/gccxmlparser.py: [190] Strip leading :: from types before
	looking them up on the standard type registry

	* pybindgen/typehandlers/base.py: [189] Don't canonicalize names
	anymore (it is C++ specific, and even in C++ causes problems with
	fundamental types, such as int, bool, and double)

	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/settings.py,
	* pybindgen/typehandlers/base.py: [188] Add unblock_threads option

	* pybindgen/typehandlers/base.py: [187] Buf fixes

2007-11-22  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/typehandlers/inttype.py: [186] handle uint32_t type (same
	as unsigned int)

2007-11-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py,
	* tests/test.py: [185] fix regression in pointer transformations

	* pybindgen/cppclass.py: [184] fix a regression in virtual methods

2007-11-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foomodulegen.py,
	* pybindgen/typehandlers/base.py: [183] fix type transformations
	regression

	* pybindgen/module.py: [182] bug fix

2007-11-21  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/typehandlers/inttype.py: [181] Fix stupid bug in uint16_t
	and uint8_t type handlers

	* pybindgen/typehandlers/inttype.py: [180] Implement uint16_t and
	uint8_t type handlers

	* pybindgen/gccxmlparser.py,
	* pybindgen/typehandlers/stringtype.py: [179] recognize type
	std::string const &

	* pybindgen/gccxmlparser.py: [178] Don't wrap incref/decref methods.

	* pybindgen/gccxmlparser.py: [177] Free function annotations.

	* pybindgen/gccxmlparser.py: [176] Class annotations

	* pybindgen/cppclass.py: [175] Fix C++ helper class generation

	* examples/foo.h,
	* pybindgen/gccxmlparser.py: [174] Annotations

	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py: [173] fix a variable declaration
	with invalid name

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py: [172] Automatically disable the class
	constructor when a pure virtual method could not be generated, to
	avoid compilation errors.

2007-11-20  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/typehandlers/floattype.py: Added.

	* pybindgen/typehandlers/__init__.py: Modified.

	[171] Add float type handlers

2007-11-20  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/gccxmlparser.py: [170] Scan class methods and attributes

2007-11-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/gccxmlparser.py,
	* pybindgen/module.py,
	* pybindgen/typehandlers/base.py: [169] More work in progress for the
	pygccxml based header file scanner.

2007-11-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/gccxmlparser.py: Added.

	[168] Start of a pygccxml based source code scanner; so far it parses
	enums and free functions, and only handles parameters that don't
	require information other than type and name.

2007-11-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [167] Canonicalize (add a :: prefix
	if it doesn't have one already) registered type names.

2007-11-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/utils.py: Added.

	* pybindgen/__init__.py: Modified.

	[166] Move the function write_preamble() to a separate source file,
	utils.py

2007-11-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* pybindgen/cppclass.py: [165] merge

2007-11-16  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* pybindgen/cppclass.py: [163.1.1] Add support for singleton classes
	(which have a private destructor)

2007-09-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* README: [164] Basic enumerations done, update README Planned
	section.

2007-09-25  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/enum.py: Added.

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/__init__.py,
	* pybindgen/module.py: Modified.

	[163] Add simplistic support for enum types.  Could be improved...

2007-09-25  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* README: [162] Update planned/completed features.

2007-09-24  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/typehandlers/stringtype.py: [161] s/String/CString/

	* pybindgen/typehandlers/stringtype.py: [160] Rename StringParam to
	CStringParam (less ambiguity)

	* pybindgen/typehandlers/stringtype.py: [159] Add missing
	get_c_error_return() impl in StringReturn

	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/stringtype.py: [158] Patch from Mark Lee (Bug
	#144360): add support for more basic types (unsigned int, char,
	string)

2007-09-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [157] Update to WAF trunk API.

	* pybindgen/cppclass.py: [156] fix accidental garbage introduced

2007-09-13  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/typehandlers/pyobjecttype.py: Added.

	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/__init__.py,
	* tests/test-generation.py: Modified.

	[155] Add support for PyObject* types (untested)

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

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/function.py: [154] Fix Bug #138344: Generic C++ functions
	can't be assigned to a method in python.

2007-09-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py: [153] Support C++ instance attributes through
	getter/setter methods (Bug #136993)

=== 0.7.0 ===
2007-09-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* NEWS: [152] Update NEWS

2007-08-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py: [151] Implement and test CppClassPtrParameter
	c_to_python conversion.

	* examples/foomodulegen.py,
	* pybindgen/cppclass.py: [150] Add a missing const_cast if the
	parameter is const.

	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py: [149] Support for const parameters;
	support virtual proxy wrappers with C++ class reference parameters.

2007-08-29  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py: [148] Implement convert_c_to_python of
	CppClassParameter; add corresponding unit test using virtual methods.

	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py: [147] implement custodian/ward in cpp pointer
	parameters

	* pybindgen/typehandlers/base.py: [146] Add a _before_return_hook hook
	method of forward wrappers, that can be used to insert code to post-
	process parameters and return value.

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py: [145] Add unit tests for parameter-as-ward
	forthcoming implementation.

	* pybindgen/cppclass.py: [144] Add custodian API to
	CppClassPtrParameter; refactor CppClassReturn*, adding a common base
	class CppClassReturnValueBase.

2007-08-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py: [143] implement custodianship of C++ class
	pointer return types, and fix a couple of bugs on the way.

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py: [142] Add possible API and unit tests for
	pointer-to-class return value with a custodian.

2007-08-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/overloading.py,
	* tests/test.py: [141] Implement implicit conversions.

2007-08-26  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py: [140] Implicit conversions only make sense in
	by-value parameter passing.

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py: [139] Add API and unit tests for the implicit
	conversions support soon to be implemented.

2007-08-25  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foomodulegen.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/function.py: [138] Assorted C++ namespace support fixes.

	* wscript: [137] Add waf option to generate pybindgen/version.py

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/module.py,
	* tests/test-generation.py: [136] Add propert support for C++
	namespaces and Python submodules.

2007-08-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/function.py: [135] Support wrapping namespaced functions,
	in an ugly preliminary way.

	* examples/footest.py,
	* pybindgen/cppclass.py: [134] Fix storing subclass wrapper in a C++
	library and later getting it back with the original wrapper preserved.

2007-08-23  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/footest.py: [133] test_subclassable_store_and_take_back

	* pybindgen/cppclass.py: [132] Use PyObject_GC_New instead of
	PyObject_New when appropriate.

	* pybindgen/cppclass.py: [131] Initialize wrapper->inst_dict
	everywhere

	* pybindgen/function.py: [130] Avoid 'unused parameter' warnings in
	Functions

	* examples/footest.py: [129] Make the
	test_subclass_with_virtual_transfer_ptr a bit more comprehensive.

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/__init__.py,
	* pybindgen/cppmethod.py: [128] Fix problems with invoking virtual
	methods after transfer of ownership to a C++ library.

	* pybindgen/cppclass.py: [127] Check that self->obj isn't NULL before
	probing its typeid in tp_traverse

2007-08-22  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py: [126] Add some more tests to check garbage
	collection (not only python wrapper but also C++ object)

	* pybindgen/cppclass.py: [125] Fix bad code indentation

	* pybindgen/cppclass.py: [124] Fix reference leak in user subclass

	* pybindgen/cppclass.py: [123] Check that programmer doesn't add
	virtual methods to a class with subclassing disabled.

	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/typehandlers/base.py: [122] Initial take on C++ virtual
	method support, with a python reference leak left unresolved

2007-08-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [121] break some too long lines

2007-08-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/footest.py: [120] Add a garbage collection test

	* examples/foomodulegen.py,
	* pybindgen/__init__.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py: [119] Implement allow_subclassing; fix
	PYBINDGEN_UNUSED usage.

	* pybindgen/cppclass.py,
	* pybindgen/settings.py: [118] Add a allow_subclassing option to C++
	classes, although it is not yet implemented.

2007-08-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [117] fix missing compiler error message

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py: [116] Add a test case for the hidden subclass
	pointe return problem.

	* pybindgen/cppattribute.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py: [115] Fix bad placement of PYBINDGEN_UNUSED
	which doesn't compile with gcc 2.95

	* pybindgen/cppclass.py: [114] Write a dedicated pybindgen::TypeMap
	class to contain all the python-wrapper-from-typeinfo logic, and make
	it work for compilers without cxxabi.h

	* tests/test.py: [113] Get doctests from pybindgen.module

	* pybindgen/module.py: [112] Add the API
	Module.declare_one_time_definition()

	* pybindgen/overloading.py: [111] Insert newlines between overloaded
	wrappers

	* pybindgen/typehandlers/codesink.py: [110] Fix CodeSink.writeln()
	inserting now two blank lines instead of one.

	* pybindgen/typehandlers/codesink.py: [109] Fix a CodeSink bug causing
	empty lines to be discarded

=== 0.6.0 ===
2007-08-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [108] fix waf dist to update version

	* NEWS: [107] Update NEWS

	* wscript: [106] Don't try to get version from bzr until after we know
	we must write a version.py file.

	* pybindgen/cppclass.py: [105] When performing C++ type narrowing, use
	abi::__si_class_type_info to search up in the single inheritance tree
	until a match is found.  This allows type narrowing to still work as
	much as possible even in the presence of unregistered classes.

	* pybindgen/cppclass.py: [104] Move the generated typeid map variable
	to the top of the module, to allow early wrappers to refer to it.

	* pybindgen/cppmethod.py: [103] Add support for calling methods with
	explicit template parameters.

2007-08-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/settings.py: [102] Implement the automatic-c++-return-
	type-narrowing blueprint.

	* pybindgen/module.py: [101] Add Module.add_include API and
	Module.header member (codesink)

2007-08-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/overloading.py: [100] Add support for overloaded C++ class
	constructors

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/cppmethod.py,
	* pybindgen/function.py,
	* pybindgen/overloading.py: [99] Add support for overloaded C++ class
	methods.

2007-08-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/overloading.py: Added.

	* pybindgen/function.py,
	* pybindgen/module.py: Modified.

	[98] Refactor OverloadedFunction to pave way to reusing the same code
	for overloading also methods and constructors

2007-08-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/function.py: [97] Add a bunch of comments to
	OverloadedFunction.generate, since that code was getting difficult to
	read.

	* pybindgen/wscript,
	* wscript: [96] Better handling of version.py

2007-06-18  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/footest.py,
	* pybindgen/function.py: [95] Much improved parameter parsing error
	reporting of overloaded functions.

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/function.py,
	* pybindgen/module.py,
	* pybindgen/typehandlers/base.py: [94] Support overloaded functions.

2007-06-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [93] Refactoring.

=== 0.5.0 ===
2007-06-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* AUTHORS: [92] Add my other email address.

	* NEWS: [91] Update NEWS.

	* pybindgen/cppclass.py: [90] Support 'const' C++ attributes.

	* pybindgen/cppclass.py: [89] Implement some C++ class as return value
	reverse wrappers.

	* wscript: [88] Add -fno-strict-aliasing when compiling with gcc
	(required by Python).

	* examples/footest.py,
	* pybindgen/cppattribute.py: [87] Get static attribute setters finally
	working.

	* examples/footest.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py: [86] implement C++ class static attribute
	through a metaclass rather than descriptor; unfortunately static
	attribute setters are still not working for some reason.

2007-06-11  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* wscript: [85] Run examples/footest.py on waf check.

2007-06-10  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/footest.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py: [84] Add code for static attribute
	setters, which unfortunately doesn't work due to Python limitations
	:-(

	* examples/footest.py,
	* pybindgen/cppattribute.py,
	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py: [83] Generate setters for C++ class
	instance attributes.

2007-06-10  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppattribute.py,
	* pybindgen/cppmethod.py: Added.

	* pybindgen/cppclass.py: Modified.

	[82] C++ code reorganization, split into different files to make
	cppclass.py smaller.

2007-06-10  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py: [81] ReturnValue s/retval/self.value/ fixes

	* tests/test-generation.py: [80] Test all combinations of
	caller_owns_return and transfer_ownership.

	* pybindgen/cppclass.py: [79] tiny bug fix

	* tests/test-generation.py: [78] improve tests to cover c++ class type
	handlers

	* pybindgen/cppclass.py: [77] Use the new ReturnValue.value attribute,
	instead of #define retval ... #undef hacks.

	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/booltype.py,
	* pybindgen/typehandlers/doubletype.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/stringtype.py: [76] Define a 'value'
	attribute in ReturnValue objects, and use it instead of the

	hardcoded 'retval' variable name.

	* pybindgen/typehandlers/doubletype.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/stringtype.py,
	* tests/test-generation.py: [75] Fix Parameter implementations to use
	self.value instead of self.name where appropriate.

	* pybindgen/typehandlers/base.py: [74] Fix missing self.declarations
	in CodeBlock.

	* pybindgen/typehandlers/base.py: [73] Simplify set/get_value/lvalue.
	It's becoming way too complicated, and not possible to guarantee
	correct code.  Better just to have a simple 'value' attribute for now,
	defaulting to the parameter name.

2007-06-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/cppclass.py,
	* pybindgen/module.py,
	* pybindgen/typehandlers/base.py: [72] Make CodeBlock have an
	associated DeclarationsScope, so that you can call declare_variable on
	it.  Add [gs]et_l?value() methods to Parameter, to dissociate the
	value/lvalue of a parameter from its name.  Actual type handlers still
	need to be fixed, though.

	* pybindgen/typehandlers/base.py: [71] Add CodeBlock.indent/unindent
	methods (simple proxies to the code sink methods).

=== 0.4.0 ===
2007-06-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* NEWS: [70] Update NEWS for new release.

	* pybindgen/cppclass.py: [69] Don't delete self->obj in the destructor
	if no usable constructor exists; prevents compilation error with
	singleton classes and private destructor.

	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py: [68] More efficient attribute
	getters.

	* examples/footest.py,
	* pybindgen/cppclass.py,
	* pybindgen/module.py: [67] Refactor class registration and
	generation; fix C++ static attribute getter to make it work from the
	class itself.

	* examples/foo.cc,
	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py: [66] API for wrapping C++ instance and static
	attributes; implement getter for instance attribute; getter for static
	attributes not fully working yet.  None of the setters implemented.

	* pybindgen/__init__.py,
	* pybindgen/cppclass.py,
	* pybindgen/function.py,
	* pybindgen/typehandlers/base.py: [65] Fix -Wall -Wextra compiler
	warnings.

	* examples/foo.h: [64] fix compiler warnings

	* tests/wscript,
	* wscript: [63] Enable more compiler warnings.

	* examples/wscript,
	* tests/wscript: [62] win32 build fixes

2007-06-06  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/typehandlers/base.py: [61] Make sure the method flags are
	correct even when parameters added in write_method_call.

	* pybindgen/typehandlers/base.py: [60] Small refactoring of
	ForwardWrapperBase.generate_body to allow the generate_call() virtual
	method to add new parse parameters that were not previously declared.

	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py: [59] add assertion to detect when
	one constructor parameter is missing a name; add option to force
	forward wrappers to use PyArg_ParseTuple or
	PyArg_ParseTupleAndKeywords

	* pybindgen/typehandlers/doubletype.py: [58] missing param name in
	double type handler

2007-06-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.h,
	* examples/foomodulegen.py,
	* pybindgen/cppclass.py: [57] Add support for C++ static methods.

	* pybindgen/cppclass.py: [56] Post-fix to 'add option to prefix global
	declarations with a name'.

2007-06-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/settings.py: Added.

	* pybindgen/cppclass.py: Modified.

	[55] Add option to prefix global declarations with a name.

2007-06-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foo.h,
	* examples/foomodulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py,
	* tests/test.py: [54] Fix the type transformations API, implement
	transformations for C++ class pointer types, and add example.

2007-06-04  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/typehandlers/base.py,
	* tests/test.py: [53] Add basic infrastructure for type
	transformations

	* examples/foomodulegen.py,
	* pybindgen/typehandlers/base.py: [52] API change, to prepare for type
	handler transformations: Parameter('ctype', ...) becomes
	Parameter.new('ctype', ...), idem for ReturnValue.

	* examples/foo.h: [51] Add missing destructor in SomeObject; fixes all
	memory leaks reported by valgrind.

	* examples/foo.h: [50] fix class refcount impl.

	* pybindgen/cppclass.py: [49] safer tp_dealloc

	* pybindgen/typehandlers/base.py: [48] Fix Python 2.6
	DeprecationWarning: object.__new__() takes no parameters.

	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py: [47] Add support for refence counted C++
	classes.

=== 0.3.0 ===
2007-06-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foomodulegen.py,
	* pybindgen/__init__.py,
	* tests/test-generation.py: [46] Add a new pybindgen.write_preamble()
	API, to write the #include <Python.h> and some other stuff needed to
	compile with Python < 2.5.

2007-06-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* NEWS: Added.

	[45] Add a NEWS file, to summarise the project progress

2007-06-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/voidtype.py: [44] make the void return type
	not return an explicit Py_None, to prevent a bug hwere None is being
	returned as first element of tuple when there are out/inout parameters

	* examples/foo.h,
	* examples/foomodulegen.py,
	* examples/footest.py,
	* pybindgen/cppclass.py: [43] implement pass class object by reference
	(one test case failing atm due to another bug)

	* pybindgen/cppclass.py: [42] workaround pylint stupidity

2007-06-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/footest.py: Added.

	[41] add some unit tests for the built example

2007-06-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [40] fix bug: should not call
	PyArg_ParseTuple[AndKeywords] when there are no parameters

	* examples/foomodulegen.py,
	* pybindgen/cppclass.py: [39] more c++ class as parameter/return
	handling

	* pybindgen/cppclass.py: [38] C++ class constructor inheritance fixes.

	* pybindgen/cppclass.py: [37] complete the refactoring in the last
	commit

	* pybindgen/cppclass.py,
	* pybindgen/typehandlers/base.py: [36] Refactor class methods to make
	them independent from the class until generation time.

	* wscript: [35] fix the 'extra version' number; it should be the last
	revision, not the revision corresponding to the last tag.

	* examples/foomodulegen.py,
	* pybindgen/cppclass.py,
	* pybindgen/module.py: [34] c++ subclassing; c++ class forward
	parameter pass-by-value

	* examples/foo.h: [33] Add example interfaces to test a bunch of new
	stuff (c++ subclassing, class parameter handling)

2007-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [32] comment out debug print

	* wscript: [31] cache bzr version information

	* examples/wscript: [30] don't install the example python module

=== 0.2.0 ===
2007-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* README: Added.

	* .bzrignore: Modified.

	[29] Add a README file

2007-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* wscript: [28] fix typo

	* wscript: [27] add bzr revno as an extra version item for non-release
	revisions

	* examples/foo.h,
	* pybindgen/cppclass.py: [26] fix cpp class wrappers (missing
	tp_alloc/new/free)

	* wscript: [25] automatically copy WAF to the dist tarball

	* wscript: [24] fix the version.py file generation

2007-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/foomodulegen.py: Added.

	* examples/wscript,
	* pybindgen/wscript,
	* tests/test-generation.py,
	* tests/wscript,
	* wscript: Modified.

	[23] refactor the build system to avoid generating .py[co] files in
	the source tree (which WAF doesn't like)

2007-06-02  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/base.py: [22] Add a DIRECTION_INOUT
	convenience alias

2007-06-01  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/cppclass.py: Added.

	* examples/foo.h,
	* examples/wscript,
	* pybindgen/__init__.py,
	* pybindgen/module.py,
	* pybindgen/typehandlers/base.py: Modified.

	[21] add support for C++ classes; some minor bug remaining, though.

2007-06-01  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/wscript,
	* wscript: [20] lazily compute VESION; write a pybindgen/version.py
	file in configure

	* wscript: [19] cleanup

=== 0.1.2 ===
2007-06-01  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* wscript: [18] get version from bzr tag or revision

2007-06-01  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>

	* pybindgen/wscript: Added.

	* wscript: Modified.

	[17] actually install the python sources

=== 0.1.1 ===
2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* generate-ChangeLog: Added.

	* .bzrignore,
	* wscript: Modified.

	[16] add changelog generation

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples/wscript: [15] workaround a WAF bug

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* AUTHORS,
	* COPYING: Added.

	[14] add copyright info

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* examples,
	* examples/foo.cc,
	* examples/foo.h,
	* examples/wscript: Added.

	* tests/wscript,
	* wscript: Modified.

	[13] Add an example

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/__init__.py: [12] export the most important objects
	directly in the toplevel package namespace

	* pybindgen/function.py: [11] fix bad wrapper prototype

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/module.py,
	* tests/test-generation.py: Modified.

	* pybindgen/functionwrapper.py: Renamed to pybindgen/function.py and
	  modified.

	[10] FunctionWrapper renamed to Function, module name changed
	accordingly.

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/module.py: Added.

	* pybindgen/functionwrapper.py,
	* pybindgen/typehandlers/base.py,
	* tests/test-generation.py: Modified.

	[9] add a module generator class

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/codesink.py: [8] CodeSink.writeln now inserts
	a blank if no parameter given

	* pybindgen/typehandlers/base.py: [7] Simplified parameter/return
	value type handler instantiation, via special __new__ methods.

	* pybindgen/functionwrapper.py,
	* pybindgen/typehandlers/base.py,
	* tests/test-generation.py: [6] Add support for generating PyMethodDef
	function tables.

	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/booltype.py,
	* pybindgen/typehandlers/doubletype.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/stringtype.py: [5] enable use of
	PyArg_ParseTupleAndKeywords in forward wrappers

	* pybindgen/typehandlers/base.py: [4] fix a
	ParseTupleParameters.get_keywords bug

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* .bzrignore,
	* pybindgen/functionwrapper.py: Added.

	* tests/test-generation.py: Modified.

	[3] add FunctionWrapper class

2007-05-31  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen/typehandlers/__init__.py,
	* pybindgen/typehandlers/booltype.py,
	* pybindgen/typehandlers/doubletype.py,
	* tests/test-generation.py: [2] bool, double

2007-05-29  Gustavo J. A. M. Carneiro  <gjc@gnome.org>

	* pybindgen,
	* pybindgen/__init__.py,
	* pybindgen/typehandlers,
	* pybindgen/typehandlers/__init__.py,
	* pybindgen/typehandlers/base.py,
	* pybindgen/typehandlers/booltype.py,
	* pybindgen/typehandlers/codesink.py,
	* pybindgen/typehandlers/doubletype.py,
	* pybindgen/typehandlers/inttype.py,
	* pybindgen/typehandlers/stringtype.py,
	* pybindgen/typehandlers/voidtype.py,
	* tests,
	* tests/test-generation.py,
	* tests/test.py,
	* tests/wscript,
	* wscript: Added.

	[1] _

