Released 3.99.3

2008-07-05  Vivien Malerba <malerba@gnome-db.org>

	* doc/C: doc. updates
	* providers/firebird: added forgotten files
	* po/POTFILES.in: added missing files
	* NEWS: news for version

2008-07-05  Vivien Malerba <malerba@gnome-db.org>

	* configure.in: better detect Berkeley DB in 64 bits environment
	* libgda/gda-meta-store.c: now caches the parsed SQL when using gda_meta_store_extract()
	for better performances
	* libgda/gda-init.c: doc. improvements
	* libgda/gda-data-model-dir.c:
	* libgda/gda-data-model-bdb.c: minor correction when setting properties
	* libgda/gda-data-model-dir.c:
	* libgda/gda-data-model-dsn-list.c: minor correction related to temporary
	GValue
	* libgda-report/engine/gda-report-engine.c:
	* libgda/gda-easy.c: 64 bits type conversion corrected
	* libgda/gda-xa-transaction.c: gda_xa_transaction_id_to_string() now returns a
	new string
	* other files: improvements to make Libgda behave correclty when multiple
	threads are used each object is used by one thread only.
	* libgda-4.0.pc.in: make Libgda depend on the gobject-2.0 module and
	not only on glib-2.0

2008-07-02  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-meta-struct.[ch]:
	 - added a "store" property to reference a GdaMetaStore, and use
	it in any gda_meta_struct_complement*()
	 - made the db_objects instance	attribute private,
	 - added gda_meta_struct_get_all_db_objects()
	 - added an 'outdated' attribute to the GdaMetaDbObject structure
	which tells if its contents may be outdated (compared to what's in
	the GdaMetaStore)
	* libgda/gda-meta-store.c: property doc. fixes, and adaptations
	to the GdaMetaStruct changes
	* tools/command-exec.c:
	* libgda/sql-parser/gda-statement-struct.c: adaptations to
	the GdaMetaStruct changes
	* libgda/sql-parser/gda-statement-struct-util.c:
	* libgda/gda-set.c: minor correction
	* tools/gda-sql.c: correctly handle query buffer ending with a
	';', and allow one to connect to the '~' connection to really
	connect to the GdaMetaStore's connection to work with a connection's
	meta data
	* libgda/sql-parser/gda-sql-parser.c:
	* doc/C: doc. improvements

2008-06-19  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-meta-struct.c:
	* providers/postgres/gda-postgres-ddl.c: minor corrections

2008-06-19  Vivien Malerba <malerba@gnome-db.org>

	* providers/firebird: started re-write of Firebird provider
	* providers/mysql: more work (mainly on the meta data) from
	Carlos Savoretti

2008-06-15  Vivien Malerba <malerba@gnome-db.org>

	* providers/mysql/mysql_specs_dsn.xml.in:
	* providers/mysql/gda-mysql-provider.c: added a COMPRESS option to specify the
	CLIENT_COMPRESS flag when opening the connection
	* WixInstaller/*: configuration files to use with the Wix Windows
	installer to produce .msm and .msi files
	* configure.in: also use the mysql_config5 program when detecting a
	MySQL installation
	* libgda/gda-config.c: crasher fixed
	* tools/gda-sql.c: better interraction with the Windows console
	* libgda/binreloc/gda-binreloc.c: cut the last "bin" part of a path
	under MacOS X

2008-06-10  Vivien Malerba <malerba@gnome-db.org>

	* configure.in: if no --with-postgres or --with-mysql are passed to the configure
	script, then try to find PotgreSQL or MySQL
	* libgda/gda-connection.c:
	* libgda/gda-data-model-dsn-list.c:
	* libgda/gda-data-model-query.c:
	* libgda/gda-init.c:
	* libgda/gda-meta-store.c:
	* libgda/gda-meta-struct.c:
	* libgda/gda-server-operation.c:
	* libgda/gda-server-provider.c:
	* libgda/gda-server-provider-extra.c:
	* libgda/gda-util.c:
	* libgda/gda-xa-transaction.c:
	* libgda/handlers/gda-handler-bin.c:
	* libgda/handlers/gda-handler-boolean.c:
	* libgda/handlers/gda-handler-numerical.c:
	* libgda/handlers/gda-handler-time.c:
	* libgda/handlers/gda-handler-type.c:
	* libgda/sqlite/gda-sqlite-handler-bin.c:
	* libgda/gda-data-access-wrapper.c:
	* libgda/gda-data-model-array.c:
	* libgda/gda-data-model-dir.c:
	* libgda/gda-data-model-row.c:
	* libgda-report/DocBook/gda-report-docbook-document.c:
	* libgda-report/RML/gda-report-rml-document.c:
	* libgda-report/gda-report-document.c:
	* providers/mysql/mysql_specs_create_db.xml.in:
	* providers/mysql/mysql_specs_create_table.xml.in:
	* providers/postgres/postgres_specs_create_db.xml.in:
	* providers/sqlite/sqlite_specs_create_index.xml.in:
	* providers/sqlite/sqlite_specs_create_index.xml.in:
	* providers/sqlite/sqlite_specs_create_table.xml.in:
	* providers/mdb/mdb_specs_dsn.xml.in:
	* tools/gda-sql.c:
	* libgda-report/engine/gda-report-engine.c:
	* providers/postgres/gda-postgres-provider.c:
	* libgda/sqlite/gda-sqlite-provider.c:
	* providers/postgres/gda-postgres-provider.c: corrections for bug #537117
	* po/*: updated translation strings
	* libgda/gda-batch.[ch]: s/gda_batch_new_copy/gda_batch_copy/, and added gda_batch_get_parameters(),
	similar to gda_statement_get_parameters()
	* libgda/gda-set.[ch]: make gda_set_add_holder() return TRUE if the holder has
	really been added to the set
	* libgda/gda-connection.c: implemented gda_connection_batch_execute(), corrects bug #537558

2008-06-09  Vivien Malerba <malerba@gnome-db.org>

	* po/LINGUAS:
	* configure.in: applied (slightly modified) patch for bug #536971 (thanks to Yuriy Penkin)
	* po/POTFILES.in:
	* po/POTFILES.skip: updated lists of files
	* tools/gda-list-server-op.c:
	* doc/C/:
	* testing/gda-provider-status.c:
	* libgda/gda-server-operation.[ch]:
	* libgda/gda-server-provider.c: s/GDA_SERVER_OPERATION_NB/GDA_SERVER_OPERATION_LAST/
	* testing/html.c: better output
	* libgda/gda-value.c:
	* libgda/gda-config.c:
	* providers/mysql/gda-mysql.h:
	* tools/gda-list-config.c:
	* libgda/gda-data-model-bdb.c:
	* configure.in: better detection of providers' libraries (specifically when cross
	compiling with Mingw)
	* providers/mysql/libmysql.def: file containing exported symbols for Win32 cross compiling
	with Mingw
	* providers/bdb/patch_db.h: patch to apply to db.h when compiling with MinGW
	* providers/postgres/gda-postgres-ddl.c: implemented missing parts
	* libgda/gda-config.c:
	* libgda/gda-connection.c:
	* libgda/gda-data-model-bdb.c:
	* libgda/gda-data-model.c: some fixes for bug #537117

2008-06-04  Vivien Malerba <malerba@gnome-db.org>

	* po/POTFILES.in:
	* po/POTFILES.skip: updated lists of files
	* libgda/gda-connection.h: added GDA_CONNECTION_FEATURE_XA_TRANSACTIONS
	* testing/html.[ch]:
	* testing/Makefile.am:
	* testing/gda-provider-status.c: new program to report about the
	implementation of database providers (generates an HTML report)
	this program is not installed by 'make install'
	* providers/mysql: more work on the MySQL provider (thanks to Carlos
	 Savoretti)

2008-06-04  Johannes Schmid <jhs@gnome.org>

	* libgda/sql-parser/Makefile.am:
	Added rules to generate gda-sql-parser-enum-types.[ch], fixes bug #536418

2008-06-03  Vivien Malerba <malerba@gnome-db.org>

	* configure.in: use pg_config if possible to get PostgreSQL's
	compilation arguments
	* providers/postgres/gda-postgres-meta.c: check that the server's
	version is at least 8.2 before using pg_is_other_temp_schema() in SQL
	* libgda/Makefile.am:
	* libgda/gda-xa-transaction.[ch]: new distributed transaction manager
	* libgda/gda-server-provider.[ch]:
	* libgda/libgda.h.in:
	* libgda/sqlite/gda-sqlite-provider.c:
	* providers/postgres/gda-postgres-provider.c:
	* providers/skel-implementation/capi/gda-capi-provider.c: support for
	the new distributed transaction manager object
	* doc/C: doc updates

2008-06-01  Vivien Malerba <malerba@gnome-db.org>

	* libgda/sqlite/gda-sqlite-provider.c:
	* libgda/gda-server-operation.c: applied patch to fix mem leaks (thanks to
	Phil Longstaff)
	* providers/mysql/mysql_specs_create_table.xml.in: applied patch to fix the CREATE TABLE
	operation (thanks to Phil Longstaff)
	* libgda/gda-util.[ch]: applied patch for bug #534805 (thanks to Johannes Schmid)
	* configure.in:
	* libgda/binreloc/gda-binreloc.c: implemented binary relocation under Mac OS X
	* configure.in:
	* libgda/gda-data-model-dir.c: detect if GIO is available and
	use it instead of GnomeVFS

2008-05-22  Vivien Malerba <malerba@gnome-db.org>

	* tests/providers/prov-test-util.c: applied patch to improve
	authentication (Carlos Savoretti)
	* libgda/gda-connection.c: get rid of all the prepared statements before
	closing the connection, and not when the connection object is disposed
	to prevent an error
	* libgda/sqlite/sqlite-src/: up to version 3.5.9

2008-05-20  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-connection.c: applied patch to fix mem leak (thanks to
	Phil Longstaff)
	* libgda/gda-data-model.c:
	* libgda/gda-util.c:
	* libgda/gda-data-model-array.c: cosmetic changes

2008-05-14  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-config.c: automatically correct spelling mistakes in
	provider name, and correctly alphabetically order the DSN list
	* libgda/gda-easy.c: don't warn if database name is NULL in gda_prepare_create_database()
	and gda_prepare_drop_database()
	* providers/mysql/gda-mysql.h: reset the provider's name to "MySQL"
	* doc/C/Makefile.am:
	* providers/mysql/Makefile.am: fixed "make distcheck" problem
	* providers/postgres/postgres_specs_dsn.xml.in: doc improvement
	* libgda/gda-connection.h: removed GDA_CONNECTION_FEATURE_XML_QUERIES and added
	GDA_CONNECTION_FEATURE_LAST to set the last feature ID
	* tests/meta-store/common.c: removed some useless test
	* tests/parser/check_normalization.c:
	* tests/parser/check_validation.c:
	* tests/parser/check_dml_comp.c:
	* tests/parser/Makefile.am: correctly set up the test environment so that "make distcheck"
	works
	* libgda/sqlite/gda-sqlite-provider.c: applied patch by Carlos Savoretti to handle
	the G_TYPE_LONG type
	* libgda/gda-statement.[ch]: added a GDA_STATEMENT_SQL_PARAMS_AS_UQMARK flag to
	render variables in statements as a single "?"
	* configure.in:
	* tools/command-exec.c:
	* tools/gda-sql.c:
	* tools/tools-input.c: READLINE and HISTORY libraries detection made easier

2008-04-30  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-util.c: also encode the '=' char in gda_rfc1738_encode()
	* providers/mysql/gda-mysql-meta.c:
	* providers/mysql/gda-mysql-recordset.c: improved MySQL provider (thanks
	to Carlos Savoretti)
	* libgda/libgda.h.in:
	* tools/gda-list-server-op.c:
	* tools/gda-list-config.c:
	* tools/gda-sql.c:
	* tests/meta-store/check_meta_store_sqlite.c:
	* tests/meta-store/check_meta_store_postgresql.c:
	* tests/meta-store/check_meta_store_mysql.c:
	* tests/meta-store/check_meta_store_memory.c:
	* tests/data-models/check_virtual.c:
	* tests/data-models/check_data_proxy.c:
	* tests/data-models/check_model_import.c:
	* tests/value-holders/check_statement.c:
	* tests/value-holders/check_set.c:
	* tests/value-holders/check_holder.c:
	* tests/parser/check_normalization.c:
	* tests/parser/check_validation.c:
	* tests/parser/check_dml_comp.c:
	* tests/parser/check_parser.c:
	* tests/providers/check_sqlite.c:
	* tests/providers/check_oracle.c:
	* tests/providers/check_odbc.c:
	* tests/providers/check_msql.c:
	* tests/providers/check_ldap.c:
	* tests/providers/check_firebird.c:
	* tests/providers/check_sybase.c:
	* tests/providers/check_bdb.c:
	* tests/providers/check_mdb.c:
	* tests/providers/check_xbase.c:
	* tests/providers/check_mysql.c:
	* tests/providers/check_postgres.c:
	* tests/providers/check_freetds.c:
	* tests/providers/check_ibmdb2.c:
	* doc/C/libgda-4.0-sections.txt:
	* doc/C/gettingstarted.xml:
	* doc/C/tmpl/libgda.sgml:
	* doc/C/examples/full_example.c:
	* providers/sybase/main.c:
	* providers/bdb/gda-bdb-test.c:
	* providers/mysql/gda-mysql-meta.c:
	* providers/mysql/gda-mysql-recordset.c:
	* testing/gda-test-blob.c:
	* libgda/sqlite/virtual/virtual-test.c:
	* libgda/gda-init.c:
	* libgda/gda-connection.c:
	* samples/SqlParserConsole/console.c:
	* samples/TableCopy/table-copy.c:
	* samples/TableCopy/table-copy-easier.c:
	* samples/DDL/ddl.c:
	* samples/SimpleExample/example.c:
	* samples/Virtual/virtual-test.c:
	* samples/BDB/access-raw.c:
	* samples/BDB/access-custom.c:
	* samples/F-Spot/repair-path.c:
	* samples/DirDataModel/find-duplicates.c:
	* samples/XSLT/transform.c:
	* samples/Report/customers-report-rml.c:
	* samples/Report/customers-report-docbook.c:
	* samples/Report/customers-report.c: changed the gda_init() signature to
	void gda_init (void), and removed the gda_main_run() and gda_main_quit()
	functions
	* libgda/gda-data-proxy.[ch]: added gda_data_proxy_set_ordering_column() to
	enable ordering by a column
	* libgda/sqlite/virtual/gda-vprovider-data-model.c: correctly name columns
	when creating the virtual table (add double quotes when necessary)
	* libgda/sqlite/virtual/gda-vconnection-data-model.c: fixed an object
	referencing bug
	* testing/gda-test-connection.c: fixed prepared statements unreferencing
	bug
	* libgda/gda-util.c:
	* libgda/gda-meta-store.c:
	* libgda/sqlite/gda-sqlite-provider.c:
	* libgda/sql-parser/gda-statement-struct-parts.h:
	* libgda/sql-parser/parser.y:
	* libgda/sql-parser/gda-statement-struct.c:
	* libgda/sql-parser/gda-statement-struct-parts.c:
	* libgda/sql-parser/parser.c:
	* libgda/gda-statement.c:
	* providers/postgres/gda-postgres-provider.c:
	* providers/postgres/parser.y:
	* providers/postgres/parser.c:
	* providers/mysql/parser.y:
	* providers/mysql/parser.c:
	* providers/skel-implementation/capi/parser.y:
	* providers/skel-implementation/capi/parser.c:
	* doc/C/xml/gda-sql-statement.xml:
	* doc/C/libgda-4.0-decl.txt:
	* doc/C/tmpl/gda-sql-statement.sgml:
	* doc/C/libgda-4.0-undocumented.txt:
	* doc/C/libgda-4.0-sections.txt:
	* doc/C/html/index.sgml:
	* doc/C/libgda-4.0-decl-list.txt: modifications for bug #527002
	* libgda/sql-parser/gda-sql-parser.c:
	* providers/postgres/gda-postgres-pstmt.c:
	* providers/postgres/gda-postgres-provider.c: fixed mem leak, bug
	#527012
	* libgda/gda-data-model-query.c: bug fixes
	* libgda/gda-set.c: correctly identify a property name

2008-04-27  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-set.[ch]:
	* libgda/sql-parser/gda-statement-struct-select.c:
	* libgda/gda-data-model.c:
	* libgda/gda-connection.c:
	* tools/gda-sql.c: cosmetic changes
	* tests/value-holders/check_holder.c! corrected test case
	* libgda/gda-holder.c: fixed a bug in binding an object to another
	* libgda/gda-meta-struct.h: reorganized the GdaMetaDbObject structure
	* libgda/gda-config.[ch]: added gda_config_dsn_needs_authentication(),
	and gda_config_get_dsn() now accepts username:password prepended to the DSN
	* libgda/sqlite/gda-sqlite-meta.c: corrected the way tables are reported
	* libgda/sqlite/gda-sqlite-provider.c: now render the FALSE keyword as 0 and
	TRUE as 1 (this is how SQLite handles booleans)
	* libgda/gda-meta-store.c:
	* doc/C: docs. update
	* libgda/gda-util.c: fixed a bug in the completion function when no proposal
	exists
	* libgda/gda-meta-struct.[ch]: added gda_meta_struct_complement_schema() and
	gda_meta_struct_complement_default() which respectively fast-adds all the objects of a
	schema or all the objects which can be named without the schema
	prefix. Also added gda_meta_struct_complement_depend() which add to
	the object all the database objects on which an object depends.

2008-04-15  Vivien Malerba <malerba@gnome-db.org>

	* configure.in: Rename libext variable to avoid contaminating libtool-2.2
	variable by same name, for bug #527892 (from Cygwin Ports maintainer)
	* libgda/gda-connection.c: corrected a bug in gda_connection_get_events(): the
	returned list is now read-only, the last GdaConnectionEvent being first in the list
	* libgda/gda-connection-event.c: removed gda_connection_event_free() as
	g_object_unref() should be used instead, removed gda_connection_event_list_free()
	and gda_connection_event_list_copy()
	* libgda/gda-util.[ch]: added a new gda_completion_list_get() function to make
	Libgda compute a list of possible completions when writinf a SQL statement
	* tools/command-exec.c:
	* tools/gda-sql.c:
	* tools/tools-input.c: improved completion mechanism using gda_completion_list_get()
	* libgda/sql-parser/gda-statement-struct-util.[ch]:
	* libgda/gda-meta-struct.[ch]: improved handling of double quoted SQL identifiers
	* tools/gda-sql.c: removed the -p (Provider name), -s (Data source) and
	-c (Direct connection string) options: now any number of connection can be opened
	by listing them one after the other using either a DSN name or a connection string
	like "PostgreSQL://DB_NAME=mydb"
	* providers/postgres/gda-postgres-meta.c: bug fixed in the I_STMT_REF_CONSTRAINTS and
	I_STMT_REF_CONSTRAINTS_ALL statements

	Made a review of the DSN and connection strings in Libgda, and decided to require
	string encoded using RFC 1738 (Uniform Resource Locators (URL)): the non ascii
	(and some special characters) must be represented in their "%ab" form where
	"ab" is their hexa. representation; this will solve problems where DSN and/or
	auth string must contain some ";" character.
	* libgda/gda-util.[ch]: added the gda_rfc1738_encode(), gda_rfc1738_decode(),
	gda_dsn_split() and gda_connection_string_split() functions
	* libgda/gda-quark-list.c: modified gda_quark_list_new_from_string() and
	gda_quark_list_add_from_string() to decode the key and value for each pair.
	* libgda/gda-config.[ch]: use gda_rfc1738_encode() when reading provider name, username
	and password from config file.
	* libgda/gda-connection.c: changed gda_connection_open_from_dsn() to accept DSN in
	the form [<username>[:<password>]@]<DSN> where <username> and <password> are RFC 1738
	encoded.
	* libgda/sql-parser/gda-statement-struct-parts.c: applied patch by Daniel Espinosa for
	bug #528057

2008-04-10  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-meta-struct.c: crash bug fixed
	* providers/postgres/gda-postgres-meta.c: bug fixed
	* tools/tools-input.[ch]:
	* tools/gda-sql.c: implemented rudinentary command completion, and also tests
	if the direct connection string is in fact a DSN when opening the connection

2008-04-10  Murray Cumming  <murrayc@murrayc.com>

	* doc/C/prov-writing.xml:
	* doc/C/tmpl/gda-connection.sgml:
	* libgda/gda-config.c (gda_config_get_provider_object,
	  gda_config_list_providers, load_providers_from_dir):
	* libgda/gda-connection.c (gda_connection_class_init,
	  gda_connection_get_property, gda_connection_open_from_dsn,
	  gda_connection_open, gda_connection_get_cnc_string,
	  gda_connection_get_authentication):
	* libgda/gda-connection.h (GdaConnectionMetaType):
	* tools/gda-sql.c (extra_command_manage_cnc): Rename authentification to
	authentication in API and implementation.

2008-04-10  Vivien Malerba <malerba@gnome-db.org>

	* doc/C/libgda-4.0-sections.txt:
	* doc/C/tmpl/gda-pmodel.sgml:
	* providers/postgres/gda-postgres-recordset.c:
	* libgda/gda-holder.c:
	* libgda/gda-data-model-iter.c:
	* libgda/gda-value.c:
	* libgda/providers-support/gda-pmodel.[ch]:
	* libgda/providers-support/gda-prow.c:
	* libgda/gda-value.h:
	* libgda/gda-set.c:
	* libgda/gda-data-model.c: minor tweaks to improve performances

2008-04-09  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-set.c: use a GHashTable to find individual GdaHolder objects by
	their ID for better performances

2008-04-09  Vivien Malerba <malerba@gnome-db.org>

	* tools/command-exec.c: removed bogus include
	* tools/information-schema-doc.c: fixed warnings

2008-04-09  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-value.c: corrected some memory leaks, for bug #526748
	* libgda/gda-connection.c: make gda_connection_get_authentification() return the empty
	string if the connection has no authentication string rather than NULL
	* libgda/gda-connection.c: the events list is now stored in reverse order, and the
	gda_connection_get_events() method returns a copy (in the correct order) of the list, for
	bug #526818
	* tools/gda-sql.c: changed the "\dsn_list" command to "\l", when using the "\c" command,
	passing a connection name starting with '~' will allow one to use the connection associated
	with the meta data: for example the "\c ~c0" command creates a "~c0" connection which corresponds
	to the "c0" connection's meta data
	* tools/command-exec.c: replaced g_strsplit() with a small custom tokenizer which
	recognizes simple and double quoted strings
	* tools/Makefile.am:
	* tools/information-schema-doc.c:
	* doc/C/i_s_doc.xml: created a (non installed) tool to automatically generate the i_s_doc.xml file which
	documents the structure of the meta data database.
	* libgda/information_schema.xml: fixed the "_element_types" table usage and added some descriptions
	about the tables, views and individual columns
	* libgda/gda-server-provider.h:
	* libgda/gda-connection.c: added a new "el_types" meta data method
	* libgda/sqlite/gda-sqlite-provider.c:
	* libgda/sqlite/gda-sqlite-meta.[ch]:
	* providers/postgres/gda-postgres-provider.c:
	* providers/postgres/gda-postgres-meta.[ch]:
	* providers/mysql/gda-mysql-provider.c:
	* providers/mysql/gda-mysql-meta.[ch]:
	* providers/skel-implementation/capi/gda-capi-provider.c:
	* providers/skel-implementation/capi/gda-capi-meta.[ch]: implemented (or partially implemented)
	the new "el_types" meta data method
	* doc/C: added an empty XSLT extension section, and misc doc. updates
	* tools/tools/tools-input.c: prepared code completion feature, and correctly initialize history

2008-04-08  Murray Cumming  <murrayc@murrayc.com>

	* libgda/gda-connection.c (gda_connection_supports_feature):
	* libgda/gda-row.c (gda_row_copy, gda_row_set_id): Very minor  
	corrections to documentation.

2008-04-07  Murray Cumming  <murrayc@murrayc.com>

	* providers/postgres/libmain.c (plugin_init): Make sure that the 
	module_path string is freed before being reassigned, though this is 
	probably not the leak that valgrind is reporting here.

2008-04-06  Vivien Malerba <malerba@gnome-db.org>

	* configure.in:
	* providers/Makefile.am:
	* providers/mysql/*: merged Carlos Savoretti's preliminary MySQL provider's
	rework

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

	* libgda/gda-column.c (gda_column_set_default_value):
	Free default_value with gda_value_free() instead of g_free(), to fix 
	what valgrind says is a possible leak.

2008-04-06  Vivien Malerba <malerba@gnome-db.org>

	* samples/XSLT/test.xsl:
	* samples/XSLT/transform.c:
	* libgda-xslt/libgda-xslt.h:
	* libgda-xslt/sqlexslt.c:
	* libgda-xslt/sql_backend.c:
	* libgda-xslt/sql_exslt_internal.c:
	* libgda-xslt/sql_backend.h: applied patch from Pawel Cesar Sanjuan Szklarz to
	add a new function to the xslt extension libgda-xslt

2008-04-06  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-server-operation.c:
	* libgda/gda-easy.[ch]: modifications for bug #525877
	* tests/parser/Makefile.am:
	* tests/parser/check_validation.c:
	* tests/parser/check_normalization.c:
	* tests/parser/check_dml_comp.c: separated the validation check into a strict validation
	check, a DML command computation from a SELECT command and a "normalization" check
	* tests/parser/testvalid.xml: more test cases
	* libgda/sql-parser/: improved GsaSqlStatement structure check, validation, and added
	gda_sql_statement_normalize() which for example will expand all the '*' fields into the actual
	list of fields in the table.
	* libgda/gda-util.[ch]: added gda_identifier_equal() to compare SQL identifiers in
	a safe way (case insensitive comparison unless double quoted) and gda_identifier_hash()
	which computes a hash for an identifier (both can be used as base functions for a GHashTable)
	* providers/skel-implementation/capi/parser.y:
	* providers/postgres/parser.y:
	* libgda/sql-parser/parser.y: modified parser to allow the "customers"."id" style syntax
	* doc/C: misc doc updates

2008-04-03  Murray Cumming  <murrayc@murrayc.com>

	* providers/postgres/gda-postgres-provider.c
	  (get_connection_type_list): g_strdup() the initial value of 
	any_type_oid to avoid possibly freeing a static string.
	* providers/postgres/libmain.c (plugin_init): Add a comment that the 
	module path is leaked, but that it is not a big deal.

2008-04-02  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-set.c: fixed a double free problem, for bug #525601

2008-04-02  Vivien Malerba <malerba@gnome-db.org>

	* libgda/sqlite/gda-sqlite-provider.c: corrected mem leak (thanks to Phil Longstaff)
	* libgda/gda-connection.c: corrected a mis-usage of variable number of arguments in
	gda_connection_get_meta_store_data(), possibly fixes bug #524837
	* libgda/gda-data-comparator.[ch]: new object to make it easy to compare the contents
	of two data models.
	* libgda/gda-server-provider.h:
	* libgda/gda-connection.h:
	* libgda/Makefile.am:
	* libgda/libgda.h.in:
	* libgda/gda-column-index.[ch]:
	* libgda/gda-data-model-index.[ch]: removed useless code
	* libgda/gda-data-model.c:
	* libgda/gda-util.[ch]: removed unused functions: gda_utility_build_encoded_id(),
	gda_utility_build_decoded_id(), gda_file_load(), gda_file_save(), gda_string_hash_to_list(),
	and started to implement a new gda_compute_dml_statements() to compute INSERT, DELETE
	and UPDATE statements corresponding to a SELECT statement (for writable data models)
	* doc/C: added a HOWTO section for most common tasks, and misc. doc updates
	* tools/gda-list-server-op.c: corrected version 3.0 to 4.0
	* libgda/gda-statement.[ch]:
	* libgda/sql-parser/gda-statement-struct.c: s/statement_check_connection/statement_check_validity/
	for easier API understanding
	* libgda/sql-parser/gda-statement-struct.[ch]:
	* gda-statement-struct-parts.[ch]:
	* gda-statement-struct-pspec.h: when validating a statement, first make sure it has a correct
	structure, and then use a GdaMetaStruct object to find references to database objects.
	* tests/parser/Makefile.am:
	* tests/parser/testvalid.xml:
	* tests/parser/check_validation.c: added a new test to verify statement validation and
	computed (INSERT, UPDATE, DELETE) statements from SELECT statement
	* libgda/gda-easy.[ch]:
	* libgda/gda-init.c:
	* libgda/gda-connection.[ch]: applied patch from Daniel Espinosa to implement the
	gda_prepare_drop_table(), gda_perform_drop_table(), gda_prepare_create_table(),
	gda_perform_create_table() and gda_connection_create_operation(), and also implemented
	the gda_connection_perform_operation(), see bug #525603
	* providers/postgres/gda-postgres-meta.c: code cleanup
	* libgda/sql-parser/gda-statement-struct-*: added a check_validity() method which
	can be implemented by some kind of statement to validate a statement using a
	connection's meta data
	* tests/parser/testvalid.xml:
	* tests/parser/check_validation.c: new test for statement validation purposes

2008-03-26  Vivien Malerba <malerba@gnome-db.org>

	* libgda/gda-config.c: don't write a warning when configuration file does not load, and use
	the GDA_TOP_BUILD_DIR environment variable if set (instead of GDA_PROVIDERS_ROOT_DIR) to
	find database providers (used when running check tests)
	* libgda/gda-meta-store.c: use the GDA_TOP_SRC_DIR environment variable if set to find
	the information_schema.xml file (used when running check tests)
	* libgda/gda-init.c: use the GDA_TOP_SRC_DIR environment variable if set to find
	the DTD files (used when running check tests)
	* tests/meta-store/Makefile.am:
	* tests/meta-store/common.c:
	* tests/meta-store/check_meta_store_sqlite.c:
	* tests/meta-store/check_meta_store_postgresql.c:
	* tests/meta-store/check_meta_store_mysql.c:
	* tests/meta-store/check_meta_store_memory.c:
	* tests/providers/check_sqlite.c:
	* tests/providers/check_oracle.c:
	* tests/providers/check_odbc.c:
	* tests/providers/check_msql.c:
	* tests/providers/check_ldap.c:
	* tests/providers/check_firebird.c:
	* tests/providers/check_sybase.c:
	* tests/providers/check_bdb.c:
	* tests/providers/check_mdb.c:
	* tests/providers/check_xbase.c:
	* tests/providers/check_mysql.c:
	* tests/providers/check_postgres.c:
	* tests/providers/Makefile.am:
	* tests/providers/check_freetds.c:
	* tests/providers/check_ibmdb2.c: set the GDA_TOP_SRC_DIR and GDA_TOP_BUILD_DIR
	environment variables
	* doc/C: doc. updates
	* libgda/gda-config.c: restored the V3 behaviour of creating the ${HOME}/.libgda config
	dir if it does not yet exist.
	* libgda/gda-data-model-dsn-list.c: fixed warning if DSN does not have any authentification string

2008-03-24  Vivien Malerba <malerba@gnome-db.org>

	* configure.in: set to version 3.99.3