Released 3.1.2 2007-10-24 Vivien Malerba * libsql/* recognize the LIMIT and OFFSET keywords as in "SELECT ... LIMIT 3", or "SELECT ... LIMIT 3 OFFSET 4" or, for the MySQL syntax "SELECT ... LIMIT 4,3", for bug #488965 * libsql/*: removed the unused memsql_*() functions in favor of the g_*() similar functions (it in fact changes nothing since the MEM_TEST macro was never defined and the g_*() functions were always used, but it cleans the code) * libgda/gda-query.[ch]: added gda_query_[gs]et_results_limit(), and SQL rendering minor improvement * libgda/gda-query-parsing.c: take into account the parsed LIMIT/OFFSET * testing/queries/basic_sql.xml: new tests with the LIMIT/OFFSET syntax * po/POTFILES.in: removed obsolete files * libgda/sqlite/*.xml.in: remove those files as they should not be here (they already are in providers/sqlite) * libgda/gda-client.c: in gda_client_open_connection_from_string(), the connection string can be in the "://" format (such as "PostgreSQL://DB_NAME=sales" for example) * libgda/sqlite/virtual/gda-vprovider-data-model.c: make gda_server_provider_get_info() return "Virtual" as provider name instead of "SQLite" * tools/Makefile.am: * tools/gda-sql.c: the SQL console can now manage several connections at once (and switch between them), and it i spossible to create virtual connections which bind together several opened connections to execute some cross connections SQL; HTML output mode is now implemented 2007-10-21 Vivien Malerba * doc/C: added a list of the environment variables useable in Libgda * tools/command-exec.[ch]: * tools/gda-sql.c: added a new "\d " command to describe a table or view * providers/firebird/*: improvements to the schema reporting (better data type report), added support for reading BLOBs' contents and arrays * libgda/gda-connection.c: use the GDA_CONNECTION_EVENTS_SHOW environment variable to determine which events get displayed on stdout * libgda/gda-server-provider.c: use the GDA_CONNECTION_COMMANDS_SHOW environment variable to determibe if commands sent to the server need to be displayed on stdout * libgda/gda-value.c: implement gda_value_stringify() for values of type GDA_TYPE_LIST * libgda/gda-data-model.c: added more options to specify the ouptut of gda_data_model_dump() * libgda/gda-client.c: removed warning * libgda/gda-dict-table.c: set a "raw_extra_attributes" 'property' with the actual extra attributes as returned when synced with the actual database schema definition * libgda/gda-dict-database.c: avoid memory leak * libgda/handlers/gda-handler-bin.c: correctly treat GdaBlob values 2007-10-15 Kjartan Maraas * configure.in: Remove "no" from ALL_LINGUAS. 2007-10-14 Vivien Malerba * libgda/gda-data-proxy.c: remove warning about GdaDataModelQuery being badly implemented * providers/ldap/gda-ldap-provider.[ch]: first modifications in a long time to make the LDAP provider work (thanks to Exell Enrique Franklin Jiménez) * libgda/sqlite/sqlite-src: up to SQLite version 3.5.1 * configure.in: correctly detect the real MDBTools API, don't link anymore with libmdbsql.so * providers/mdb/*: reworked the MDB (MSAccess) provider to be a virtual provider (now all the SQLite SQL can be used), the libmdbsql.so library is not used anymore * configure.in: correctly detect the firebird shared libraries to link with * providers/firebird/*: improvements * libgda/sqlite/virtual/gda-vprovider-data-model.c: data types issue fixed * libgda-3.0.pc.in: Depend on gthread-2.0 because gda uses g_thread_init() which requires to link against gthread-2.0, fixed bug #484112 (Armin Burgmeier) * providers/odbc/gda-odbc-provider.c: * configure.in: * libgda/gda-dict.c: * libgda/gda-query-field-agg.c: * libgda/gda-value.c: * providers/postgres/utils.c: fixes for bug #486017 (Stanislav Brabec) 2007-10-13 Yannig Marchegay * configure.in: +Occitan. 2007-10-05 Vivien Malerba * libgda/libgda-server-operation.dtd: * libgda/gda-server-operation.c: added a "type" (and optionnally "descr") attributes to the XML tag * libgda/libgda-dict.dtd: * libgda/gda-dict-field.c: scale and length attributes are only stored in XML file if they are significant * libgda/sqlite/gda-sqlite-recordset.c: correctly compute column's length and scale from declared column type * po/POTFILES.in: * tools/Makefile.am * tools/gda-list-server-op.c: new tool to list the supported DDL operations for each provider * tools/gda-sql.c: modified help message * libgda/gda-server-operation.c: * doc/C: docs. improvements * samples/DDL: new example to show a basic usage of the GdaServerOperation to creatre a table * libgda/gda-data-model-query.c: bugs fixes * tests/data-models/check_data_proxy.c: new tests when proxied data model changes 2007-09-28 Vivien Malerba * samples/README: * samples/XSLT/README: doc update 2007-09-27 Vivien Malerba * libgda-report-3.0.pc.in: * libgda-xslt-3.0.pc.in: corrected the name of the package * samples/XSLT: make the example working (Pawel Cesar Sanjuan Szklarz) * libgda-xslt/*: bug fixes * libgda/gda-dict-reg-functions.c: * libgda/gda-dict-reg-aggregates.c: don't crash if dictionary does not support functions of aggregates when trying to find one (fixes bug #414148) * providers/postgres/gda-postgres-cursor-recordset.c: implemented the i_iter_at_row() virtual method using "FETCH ABSOLUTE" (Murray Cumming) * libgda/gda-command.c: improved gda_command_set_options() to have at least GDA_COMMAND_OPTION_STOP_ON_ERRORS xor GDA_COMMAND_OPTION_IGNORE_ERRORS as the two are strict opposites 2007-09-27 Murray Cumming * providers/postgres/gda-postgres-cursor-recordset.c: gda_postgres_cursor_recordset_create_iter(): Ref the result even if we are returning an existing iter. 2007-09-26 Vivien Malerba * configure.in: detect libxslt presence * Makefile.am: * libgda-xslt-3.0.pc.in: * libgda-xslt/*: implementation of an XSL extension which uses Libgda (Pawel Cesar Sanjuan Szklarz) * samples/XSLT/*: new example to show how to use the new XSL extension (not yet working) (Pawel Cesar Sanjuan Szklarz) 2007-09-26 Vivien Malerba * libgda/gda-data-proxy.c: keep the virtual connection used for filtering opened * libgda/gda-data-proxy.c: make sure the get_value_at() and get_n_rows() are correct event when called from a callback of signals emited while in chunck_sync_idle() * libgda/gda-data-proxy.c: added gda_data_proxy_get_filtered_n_rows() * libgda/gda-data-model-iter.[ch]: added gda_data_model_iter_get_value_at() and gda_data_model_iter_get_value_for_field () * libgda/gda-data-model.c: * doc/C: doc update * libgda/gda-data-model-hash.c: signal change in gda_data_model_hash_clear() * libgda/gda-data-access-wrapper.c: correctly signal changes when the wrapped data model changes 2007-09-25 Murray Cumming * libgda/gda-data-proxy.c: (proxy_row_to_absolute_row), (absolute_row_to_proxy_row), (gda_data_proxy_init), (clean_proxy), (gda_data_proxy_set_property), (proxied_model_data_changed_cb), (gda_data_proxy_delete), (gda_data_proxy_undelete), (gda_data_proxy_find_row_from_values), (gda_data_proxy_append), (gda_data_proxy_cancel_row_changes), (commit_row_modif), (gda_data_proxy_set_sample_size), (gda_data_proxy_set_sample_start), (display_chunk_new), (display_chunk_free), (display_chunks_dump), (ensure_chunk_sync), (chunk_sync_idle), (compute_display_chunk), (adjust_displayed_chunk), (gda_data_proxy_apply_all_changes), (gda_data_proxy_cancel_all_changes), (gda_data_proxy_set_filter_expr), (gda_data_proxy_get_n_rows), (gda_data_proxy_set_value_at), (gda_data_proxy_append_values): * libgda/sql-delimiter/gda-sql-delimiter.c: * providers/postgres/gda-postgres-cursor-recordset.c: (gda_postgres_cursor_recordset_class_init), (gda_postgres_cursor_recordset_init), (gda_postgres_cursor_recordset_set_property), (gda_postgres_cursor_recordset_get_property), (gda_postgres_cursor_recordset_new), (fetch_next), (fetch_prev): * providers/postgres/gda-postgres-cursor-recordset.h: * providers/postgres/gda-postgres-provider.c: (compute_retval_from_pg_res), (gda_postgres_provider_execute_command): * providers/postgres/gda-postgres-provider.h: * tests/data-models/check_data_proxy.c: (do_test_prop_change), (do_test_common_read), (do_test_common_write): Rename chunck to chunk. * libgda/gda-data-proxy.c: Add an empty implementation of display_chunks_dump() to avoid a linker error when GDA_DEBUG is not defined. 2007-09-23 Vivien Malerba * providers/sqlite/virtual/gda-vprovider-data-model.c: each virtual table now has a new hidden integer column named "__gda_row_nb" which gives the row number of the data model represented by the table. * providers/sqlite/gda-sqlite-provider.c: corrected a bug in split_sql() * libgda/gda-data-model-bdb.c: correctly initialize variable in gda_data_model_bdb_set_values() * libgda/gda-data-proxy.c: columns containing non modified data have their name prefixed with an underscore * libgda/gda-data-proxy.[ch]: added gda_data_proxy_[gs]et_filter_expr() to enable filtering among the contents of a proxy * libgda/gda-data-proxy.c: reworked the inner working for delayed sync. mechanism * moved the GdaSqliteProvider and related objects from providers/sqlite to libgda/sqlite because libgda _requires_ the virtual connections feature now and (left in providers/sqlite the XML files and enough to make a shared library for the SQLite provider). * libgda/gda-query.c: updated gda_query_set_sql_text()'s documentation * libgda/gda-data-model.c: improved the gda_data_model_dump_as_string() and gda_data_model_dump() methods to be able to dump row numbers as well * libgda-report/gda-report-document.c: removed unused function declaration * libgda/gda-query.c: doc. improvement * libgda/gda-threader.c: added missing include * various other very minor adjustments 2007-09-02 Vivien Malerba * configure.in: set to version 3.1.2