$Id: TODO 10466 2004-11-17 00:05:40Z rafa $ UESQLC 2.0.0 TODO list ---------------------- o Change SGML CDML documents to XML (see http://www.xml.com/pub/a/98/07/dtd/). o Make UESQLC act as a preprocessor to find included files that could have UESQL statements. Maybe, it can be integrated into the GCC toolchain. o Make UESQLC to quote automatically depending on the embedded variable type. o Remove parameter '--with-oracle-home' and the related variable 'ORACLE_HOME'. UESQLC 1.0.1 TODO list ---------------------- o Add support for SAP-DB as target platform (http://www.sapdb.org/). o Add support for MySQL C API as target platform. o Add support for i586-pc-cygwin architecture. UESQLC 1.0.0 TODO list ---------------------- o Unify execute/diagnose and execute/diagnoseSingleRow function pairs in the functions execute and executeSingleRow. o Verify if there are needed all versions of the method 'connect' in PostgreSQL CDML (and others). o Non-terminal should transmit its item count to the cursor usage in later SQL statements. o Add support for NULL value detection in oracle-oci-7.x.cdml and odbc-3.x.cdml targets. o Add documentation for CDML using DOCBOOK. o Add supplemental documentation to identity-c++. o Add support for static linking of MPCL libraries. o Check intensively, the use of cursors from multiple connections. o Make test units for checking SQL transactions. o Move informix-cplus-2.53.UC2 and oracle-oci-7.x targets current engine, to the new engine in identity-c++, and test it. Also, both targets, should use their own name-spaces. o Remove the use of variable 'yylineno' in UESQL scanner. o Use function 'tmpsnam()' in class TBaseConnectionManager. o The compiler should count the occurrences of each token, so it could say where exactly is the error. o Make use of name-spaces in CDML documents for C++. o Make tests compiled only when testing. o Reduce the conflicts in the parser (now they are 62 shift/reduce and 342 reduce/reduce). o Make a skeleton of 'Makefile' rules for AUTOMAKE ('uesql.am'). o Add a line directive, at the end of the UESQL generated code block, point to the input file original line. This is an example of generated code: #line 1 "test-5.uesql.cc" : : TEST_WRITE_INFO ("DBMS-SCHEMA-LOCATION = %s", yDbmsSchemaLocation.c_str()); TEST_WRITE_INFO ("DBMS-USER-LOGIN = %s", yDbmsUserLogin.c_str()); if ( !TEST_IN_SILENT_MODE ) { mpcl::tLog.also (cerr); } if ( !yDbmsServerName.empty() && !yDbmsUserLogin.empty() ) { #line 355 { // // PostgreSQL LIBPQ 6.2.x instructions. // { mpcl::xstring hySqlServerDescriptor; mpcl::xstring hySqlServerName; mpcl::xstring hyDatabaseName; mpcl::xstring hyConnectionName; mpcl::xstring hyUserLogin; uesql::htPostgresql62xManager.clearQueues(); uesql::htPostgresql62xManager.pushOnInputQueue (Quote (yDbmsServerName)); uesql::htPostgresql62xManager.pushOnInputQueue (Quote (yDbmsUserLogin)); : : : } // not PostgreSQL LIBPQ 6.2.x #line 206 "test-5.uesql.cc" } goto end; : : UESQLC 0.9.6 TODO list ---------------------- o Add a new SQL statement for creating catalogs (aka databases) and fix the PostgreSQL targets because of implementing "CREATE SCHEMA" using the PostgreSQL statement "CREATE DATABASE". Maybe it's time for shifting the PostgreSQL target to the latest release supporting "CREATE SCHEMA". o Make a MySQL target. o Make JAVA debugging a compiler stage option. o Make a specific parser for embedded functions and simplify C++ constructors. o Remove the method 'disconnect' from connection manager in C++ CDML documents. o Generalize the use of the class 'TConnectionManager' in C++ CDML documents. o Remove the method 'diagnose*' from connection manager in C++ CDML documents. o Check for dangerous characters in strings (like '\u0000' and so). o Check transaction semantics (SQL-92 compilation units). UESQLC 0.9.4 TODO list ---------------------- x Add support for compiling multiple source files at a time. x Change libraries copyright messages from GPL to LGPL. x Change the C++ exception names to match JAVA exceptions. x Add another target for PostgreSQL 7.3 because it now supports CREATE SCHEMA and CASCADE/RESTRICT clauses for DROP. x Test current support for Oracle OCI (oracle-oci-7.x). x Make a tutorial using DOCBOOK with many examples. x Make a FAQ (debugging in JAVA and C++, running the tests, etc.). UESQLC 0.9.3 TODO list ---------------------- x Add support for dynamic search conditions. UESQLC 0.9.2 TODO list ---------------------- x Complete the support for JAVA JDBC 3.0 on PostgreSQL. x Use only one statement instance in all JDBC targets (TBaseConnectionManager). UESQLC 0.9.0 TODO list ---------------------- x Complete the support for other host languages (like JAVA). x Add support for JAVA JDBC 3.0 on PostgreSQL. UESQLC 0.8.9 TODO list ---------------------- x Fix BEGIN/END nesting and cursor declaration problems with target postgresql-libpq-6.2.x.