2013-04-14  José Alburquerque  <jaalburquerque@gmail.com>

	ByteArray: get_data(): Add a const version.

	* glib/src/bytearray.{ccg,hg}: Make the already existing get_data()
	method non-constant and add a constant one returning a const array as
	is done in general in *mm modules.

2013-04-11  José Alburquerque  <jaalburquerque@gmail.com>

	ByteArray: Add size() and get_data() methods.

	* glib/src/bytearray.{ccg,hg}:  Add these methods so that accessing
	the underlying GByteArray's data and len members (which is how it is
	done in the C API) is just as easy with glibmm.  Also use _WRAP_METHOD
	to wrap the create() method.

2013-04-09  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: Parse the argument list of methods correctly.

	* tools/pm/Function.pm (parse_param): When splitting the argument
	list split the parameter '{...}' options out and separately and deal
	with them in their own 'elsif' which is more clear and avoids code
	duplication.  Also, don't split the '<...>' matches greedily because
	that causes problems when a Glib::RefPtr<> parameter has a default
	value.

	This problem was discovered while trying to not use the optional
	parameter syntax for the Gio::TlsCertificate::verify() method by using
	a default value for the 'trusted_ca' parameter although upon
	investigation it became clear that keeping the syntax (and the method
	overloads) would be useful because a verify() with no parameters can
	be used to verify things about a certificate unrelated to the identity
	and the trusted_ca (see the TlsCertificateFlags enum that the method
	returns).

2013-04-06  Murray Cumming  <murrayc@murrayc.com>

	Add a test of implementing an interface.

	* tests/Makefile.am:
	* tests/glibmm_interface_implementation/main.cc: Add a very simple
	test that implements an interface, with a vfunc implementation and
	make sure that the vfunc is called when the caller method is called.

2013-04-02  José Alburquerque  <jaalburquerque@gmail.com>

	ByteArray: Add a Glib::Value<> template specialization for it.

	* glib/src/bytearray.{ccg,hg}: Add the specialization for ByteArray so
	that getting/setting properties of that type work.  Also added a
	Glib::ByteArray::get_type() method required for the specialization to
	compile.

This is the master branch for glibmm 2.37/8.

2013-04-01  Murray Cumming  <murrayc@murrayc.com>

	Remove Tls* classes from git.

	gio/src/tls*.[hg|ccg]: Remove all these from this branch in
	git. They are in the master branch, to appear in glibmm 3.7/8.

	This is the glibmm-2-36 branch. See the master branch for
	glibmm 2.37/38.

2013-03-31  José Alburquerque  <jaalburquerque@gmail.com>

	TlsCertificate: Use std::string for data instead of char*.

	* gio/src/tlscertificate.{ccg,hg} (TlsCertificate): Use a std::string
	in the data constructor instead of a char* because it is more C++
	like.  Remove the default value for the length argument so there is no
	ambiguity with the file constructor (which also uses std::string for
	the filename).
	(create_from_pem): Renamed from create() so that there is no ambiguity
	with the other file create() methods (one with a filename argument and
	the other with a filename and key file arguments).  Handwrote the
	method in the .ccg file (_WRAP_CREATE does not allow a custom method
	name).
	(property_certificate_pem): Use a std::string instead of a char* for
	the property type in keeping with the use of std::string for pem data.

	These changes are for when the Tls* classes are re-added to the build.

2013-03-31  José Alburquerque  <jaalburquerque@gmail.com>

	Credentials: Add the get_unix_pid() method.

	* gio/src/credentials.hg: Add the new method wrapping the
	g_credentials_get_unix_pid() C function.

2013-03-27  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Temporarily remove the Tls* related API.

	Temporarily remove the API until after the coming stable release so
	the API can be better developed thus avoiding the risk of needing an
	API or ABI break later.

	* gio/src/filelist.am: Remove the tls*.hg files from the build.  This
	will keep the sources from being built and included in the upcoming
	tarball release.
	* gio/giomm.h: #if out the tls*.h includes.
	* gio/src/enums.hg: Comment out the TlsAuthenticationMode enum.
	* gio/src/error.hg: Comment out the TlsError GError.

2013-03-27  José Alburquerque  <jaalburquerque@gmail.com>

	Gio::Tls*: Correct some referencing errors.

	* gio/src/tlscertificate.hg (get_issuer):
	* gio/src/tlsclientconnection.hg (get_server_identity):
	* gio/src/tlsconnection.hg (get*_certificate): Use refreturn in the
	wrapping of these because the C API does not reference the object when
	returning it.

2013-03-27  José Alburquerque  <jaalburquerque@gmail.com>

	giomm.h: Also remove the tlsfiledatabase.h include.

	* gio/giomm.h: Remove the include from here so that make check will
	not fail.

	* gio/src/error.hg (TlsError): A minor correction in the 'EOF'
	substitution regular expression.

2013-03-26  José Alburquerque  <jaalburquerque@gmail.com>

	TlsFileDatabase: Remove the class until its usage is more clear.

	* gio/src/filelist.am (tlsfiledatabase.hg): Remove from the build
	until it is more clear how the class should be used.

2013-03-26  José Alburquerque  <jaalburquerque@gmail.com>

	TlsError: Rename the EOF enum value.

	* gio/src/error.hg (EOF): Rename it to ENDOFFILE to avoid a clash with
	another definition of the identifier somewhere else which breaks the
	gtkmm build.

2013-03-26  Murray Cumming  <murrayc@murrayc.com>

	GTlsFileDatabase: Use std::string for filenames.

	* gio/src/tlsfiledatabase.hg: The anchor parameter
	and property are for a filename, so we should use
	std::string, because filenames are of unknown
	encoding.

2013-03-26  Murray Cumming  <murrayc@murrayc.com>

	Gio: Correct TlsDatabase/TlsFileDatbase derivation.

	* gio/src/tlsdatabase.hg:
	* gio/src/tlsfiledatabase.hg: TlsFileDatabase
	should derive from TlsDatabase, not the other
	way around. However, we do not use TlsFileDatabase,
	and it is odd (an interface that requires a
	non-interface other than GObject) so maybe we should
	not provide it yet anyway.

2013-03-25  Murray Cumming  <murrayc@murrayc.com>

	Gio: Add some TODOs about changing the base classes.

	* gio/src/actionmap.hg
	* gio/src/pollableinputstream.hg
	* gio/src/pollableoutputstream.hg
	* gio/src/remoteactiongroup.hg:
	We should probably derive from their prerequisite
	(required) classes instead. These were added in
	glibmm 2.34.

2013-03-25  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Wrap the GTlsError GError.

	* gio/src/error.hg: Wrap the GTlsError GError in this file.

	* gio/src/tlsclientconnection.hg:
	* gio/src/tlsconnection.hg: Have default true values for boolean
	setter methods in these classes.

	* gio/src/tlsfiledatabase.hg: Clarify a TODO.
	* gio/src/dbuserror.hg: Whitespace.

2013-03-25  Murray Cumming  <murrayc@murrayc.com>

	Gio::DesktopAppInfo: Added some methods.

	* gio/src/desktopappinfo.hg: Added has_key(),
	get_string() and get_boolean().

2013-03-25  Murray Cumming  <murrayc@murrayc.com>

	Gio::SocketClient: Added some methods.

	* gio/src/socketclient.hg: Added get/set_tls(),
	get/set_tls_validation_flags(), get/set_proxy_resolver().
	Added timeout, tls, enable-proxy, tls-validation, and 
	proxy-resolver properties.
	Added the event signal.
	* tools/m4/convert_gio.m4: Added necessary conversions.

2013-03-25  Chun-wei Fan  <fanc999@yahoo.com.tw>

	Visual Studio Projects: Fix and update.

	* Fix Visual C++ projects for glibmm and giomm as numerous
	sources have been added for the addition of APIs so that
	these libraries can be properly built

	* Also make the project files work better with the GLib Visual C++
	builds (which are currently supported in the GLib source
	distribution), so that the files from the GLib build can be picked
	up by the glibmm projects when the Glib sources and glibmm sources
	are extracted in the same root folder (for example,
	c:\foo\glib-2.35.9 and c:\foo\glibmm-2.35.9)

	* Fix the resolver project files for Visual C++ 2008/2010 for having
	the wrong executable output name

2013-03-24  José Alburquerque  <jaalburquerque@gmail.com>

	Tls[Client|Server]Connection: Add the create() methods.

	* gio/src/tlsclientconnection.hg:
	* gio/src/tlsserverconnection.hg: Add the create() methods, wrapping
	the *_new() functions of these classes.  Since these classes are
	interfaces, it is not possible to use _WRAP_CTOR/WRAP_CREATE() to wrap
	the new functions.

	Also make these classes derive from TlsConnection which is their base
	class (see [1][2][3][4]).  Its odd because the base class is a GObject
	and the derived ones are GInterfaces, but that's how the C API has
	done it.  Hopefully it will not be a problem.

	[1] https://developer.gnome.org/gio/stable/GTlsConnection.html#GTlsConnection.description
	[2] https://developer.gnome.org/gio/stable/GTlsConnection.html#GTlsConnection.derived-interfaces
	[3] https://developer.gnome.org/gio/stable/GTlsClientConnection.html#GTlsClientConnection.description
	[4] https://developer.gnome.org/gio/stable/GTlsServerConnection.html#GTlsServerConnection.description

2013-03-24  José Alburquerque  <jaalburquerque@gmail.com>

	gio/src/tls*.ccg: Remove empty namespaces.

	* gio/src/tlsconnection.ccg:
	* gio/src/tlsdatabase.ccg:
	* gio/src/tlsinteraction.ccg: Remove empty namespaces and unneeded
	includes.

	* gio/src/gio_extra_objects.defs: Add GTlsBackend to avoid a gmmproc
	documentation warning.

2013-03-22  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: Verify that void methods should not return a value.

	* tools/gmmproc.in: ($main::return_mismatches): Add boolean to store
	whether method return mismatches should be checked.  Make it false by
	default.
	(parse_command_line_args): Add logic to parse a new
	--return-mismatches option to specify if gmmproc should verify that
	void methods should not return a value.
	(print_usage): Modify the usage message to describe the new option.

	For convenience, output the source for which there are unwrapped
	functions, properties and signals.

	* tools/pm/DocsParser.pm (remove_example_code): Also output the source
	being processed when the example code is removed (for convenience).
	* tools/pm/Output.pm (error): Once more, output the source being
	processed when an error occurs, for convenience.
	(convert_args_cpp_to_c): Add a check for when the C++ method for which
	the parameters are being converted returns void but the C function
	does not return void.  If the added option above is specified, output
	a warning.
	
	Bug #696364.

2013-03-22  José Alburquerque  <jaalburquerque@gmail.com>

	TlsPassword: Correct its constructor parameter order.

	* gio/src/tlspassword.hg (TlsPassword): Reorder its parameters so that
	the flag comes last with a default parameter.
	(create): Do the same for its create() method.

2013-03-22  José Alburquerque  <jaalburquerque@gmail.com>

	TlsDatabase: Const and optional parameter corrections.

	* gio/src/tlsdatabase.hg: The "interaction" parameters in the methods
	are all optional (see the C API docs).
	(verify_chain):
	(verify_chain_async):
	(verify_chain_vfunc):
	(verify_chain_async_vfunc): Make these methods const because the
	database should not be changed by verifying a certificate's chain.
	(create_certificate_handle_vfunc): Make the certificate constant
	because it should not change when creating a handle for it.

2013-03-21  José Alburquerque  <jaalburquerque@gmail.com>

	TlsConnection: Correct its base class derivation.

	* gio/src/tlsconnection.hg: The class should derive from
	Gio::IOStream, not Glib::Object as in the C API.  Also add the
	get_peer_certificate() methods.

2013-03-21  José Alburquerque  <jaalburquerque@gmail.com>

	TlsCertificate: Wrap its single virtual function.

	* gio/src/tlscertificate.hg: Wrap the "verify" virtual function.  Also
	add a default value to the length parameter of the constructor
	accepting a data character array.
	* gio/src/gio_vfuncs.defs: Add the virtual function definition so that
	it is recognized.

2013-03-21  Murray Cumming  <murrayc@murrayc.com>

	Gio::FileInfo: Added get_deletion_date().

	* glib/src/fileenumerator.hg: Wrap the new
	g_file_info_get_deletion_date() function.
	* tools/m4/convert_glib.m4: Add a necessary conversion.
	
2013-03-21  Murray Cumming  <murrayc@murrayc.com>

	Gio::FileEnumerator: Added get_child().

	* glib/src/fileenumerator.hg: Wrap the new
	g_file_enumerator_get_child() function.
	
2013-03-21  Murray Cumming  <murrayc@murrayc.com>

	Glib::VariantBase: Added check_format_string().

	* glib/src/variant.hg:
	Wrap the new g_variant_check_format_string()
	function.

2013-03-21  Murray Cumming  <murrayc@murrayc.com>

	Gio::AsyncResult: Added is_tagged().

	* gio/src/applicationcommandline.hg:
	Wrapped the new g_async_result_is_tagged()
	function.

2013-03-21  Murray Cumming  <murrayc@murrayc.com>

	Gio::ApplicationCommandLine: Added some methods.

	* gio/src/applicationcommandline.hg:
	Added get_stdin() and create_file_for_arg(),
	wrapping new C functions.

2013-03-21  Murray Cumming  <murrayc@murrayc.com>

	Regenerated the -signals.defs files.

	* gio/src/gio_signals.defs: Regenerated using
	tools/gen_scripts/gio_generate_extra_defs.sh.

2013-03-19  Murray Cumming  <murrayc@murrayc.com>

	Regenerated the -methods.defs files.

	* gio/src/gio_methods.xml:
	* glib/src/glib_functions.xml: 
	* glib/src/gmodule_functions.xml: 
	* glib/src/gobject_functions.xml: Regenerated using
	tools/gen_scripts/gio_generate_methods.sh and
	tools/gen_scripts/glib_generate_methods.sh,
	with a slight hand-edit to avoid the problem in
	gioschedule.h with h2def.py (see previous commit).

2013-03-19  Murray Cumming  <murrayc@murrayc.com>

	h2def.py: Handle GLIB_AVAILABLE_IN_ALL

	* tools/defs_gen/h2def.py: Do not just ignore
	functions prefixed with GLIB_AVAILABLE_IN_ALL.
	This handles the latest glib/gio/gactiongroup.h file.

	However, we still need to handle the new
	GLIB_DEPRECATED_IN_2_36_FOR(old_func) form
	now used in glib/gio/gioschedule.h.

2013-03-19  Murray Cumming  <murrayc@murrayc.com>

	Regenerated the -enums.defs files.

	* gio/src/gio_enums.xml:
	* glib/src/glib_enums.xml: Regenerated using
	tools/gen_scripts/gio_generate_enums.sh and
	tools/gen_scripts/glib_generate_enums.sh.

2013-03-19  Murray Cumming  <murrayc@murrayc.com>

	Regenerated the -docs.xml files.

	* gio/src/gio_docs.xml:
	* glib/src/glib_docs.xml: Regenerated using
	tools/gen_scripts/gio_generate_docs.sh and
	tools/gen_scripts/glib_generate_docs.sh.