Change Log

Version Date Features
1.30.0.0 2018-09-22 Changed to write a description of the binary data length when binary data are used with PROMPT DISPLAY or EXPORT AS TXT.
1.29.3.0 2018-09-22 Modified the WRITE metacommand to use the ‘make_export_dirs’ configuration setting.
1.29.2.0 2018-09-19 Added the SUB_ADD metacommand. Made the WITH keyword optional in the IMPORT metacommand.
1.29.0.0 2018-09-12 Added the IMPORT_FILE metacommand.
1.28.0.0 2018-08-19 Modified to run under Python 3.x as well as 2.7.
1.27.4.0 2018-08-19 Now writes Python version number into execsql.log.
1.27.3.0 2018-07-31 Changed to read configuration files from both the script directory and the starting directory, if different.
1.27.2.0 2018-07-30 Added the SUB_EMPTY metacommand.
1.27.1.0 2018-07-29 Allowed single quotes and square brackets in ON ERROR_HALT WRITE and ON CANCEL_HALT WRITE metacommands.
1.27.0.0 2018-07-29 Internal script processing routines rewritten.
1.26.8.0 2018-07-25 Allowed single quotes and square brackets in WRITE metacommand. Fixed stripping of extra spaces from input data when input is not strings. Modfied data format evaluation used by IMPORT to take account of the empty_strings configuration setting.
1.26.5.0 2018-07-20 Added $PYTHON_EXECUTABLE system variable. Trimmed any trailing space from last column header of an IMPORTed CSV file. Changed to treat a string of only spaces as an empty string when empty_strings=False.
1.26.4.3 2018-07-12 Corrected handling of double-quoted filenames by the ON ERROR_HALT WRITE and ON CANCEL_HALT WRITE metacommands.
1.26.4.2 2018-07-09 Corrected handling of double-quoted filenames by the WRITE and RM_FILE metacommands.
1.26.4.0 2018-06-27 Added $STARTING_SCRIPT_NAME and $CURRENT_SCRIPT_NAME system variables. Added IS_TRUE conditional.
1.26.2.0 2018-06-25 Added a $CURRENT_SCRIPT_PATH system variable that returns the path only of the current script file.
1.26.1.0 2018-06-13 Corrected hang on uppercase counter references. Changed HALT metacommands to set the exit code to 3.
1.26.0.0 2018-06-13 Added ON CANCEL_HALT WRITE and ON CANCEL_HALT EMAIL metacommands.
1.25.0.0 2018-06-10 Added the PROMPT COMPARE metacommand.
1.24.12.0 2018-06-09 Added a MAKE_EXPORT_DIRS metacommand. Grouped all metacommands corresponding to configuration options under a common CONFIG prefix to the metacommand names. Added configuration file size and date to the message that is written to execsql.log when a configuration file is read.
1.24.9.0 2018-06-03 Modified the IMPORT metacommand to write the file name, file size, and file date to execsql.log.
1.24.8.0 2018-06-03 Corrected ‘is_null()’, ‘equals()’, and ‘identical()’ to strip quotes. Added filename to error message when the IMPORT metacommand can’t find a file. Modified SUBDATA to only remove the substitution variable, not raise an exception, when there are no rows in the specified table or view.
1.24.7.0 2018-04-03 Added the $SYSTEM_CMD_EXIT_STATUS system variable.
1.24.6.0 2018-04-01 Added the “B64” format to the EXPORT and EXPORT_QUERY metacommands.
1.24.5.0 2018-03-15 Added the ‘textarea’ entry type to the PROMPT ENTRY_FORM metacommand.
1.24.4.0 2017-12-31 Allowed “CREATE SCRIPT” as an alias for “BEGIN SCRIPT”. Allowed “DEBUG WRITE SCRIPT” as an alias for “WRITE SCRIPT”. Added the “-o” command-line option to display online help.
1.24.2.0 2017-12-30 Modified characters allowed in user names for Postgres and ODBC connections. Added the TYPE and LCASE UCASE keywords to the PROMPT ENTER_SUB metacommand.
1.24.0.0 2017-11-04 Added the ‘include_required’ and ‘include_optional’ configuration settings.
1.23.3.0 2017-11-03 Added the CONSOLE_WAIT_WHEN_ERROR_HALT setting and associated metacommand and system variable.
1.23.2.0 2017-11-02 Added the $ERROR_MESSAGE system variable.
1.23.1.0 2017-10-20 Added the ASK metacommand.
1.23.0.0 2017-10-09 Added the ON ERROR_HALT EMAIL metacommand.
1.22.0.0 2017-10-07 Added the ON ERROR_HALT WRITE metacommand.
1.21.13.0 2017-09-29 Added the SUB_APPEND and WRITE SCRIPT metacommands. Modified all metacommand messages to allow multiline text.
1.21.12.0 2017-09-24 Added the PG_VACUUM metacommand.
1.21.11.0 2017-09-23 Modified error message content and format.
1.21.10.0 2017-09-12 Added the “error_response” configuration setting for encoding mismatches.
1.21.9.0 2017-09-06 Modified to handle trailing comments on SQL script lines.
1.21.8.0 2017-08-11 Modified to allow a password to be specified in the CONNECT metacommand for MySQL.
1.21.7.0 2017-08-05 Modified to allow import of CSV files with more columns than the target table. Added DEBUG metacommands.
1.21.1.0 2017-07-04 Passed column headers to template processors as a separate object.
1.21.0.0 2017-07-01 Extended the EXPORT metacommand to allow several different template processors to be used.
1.20.0.0 2017-06-30 Added the EMAIL, SUB_ENCRYPT, and SUB_DECRYPT metacommands, and configuration properties to support emailing. Added the METACOMMAND_ERROR_HALT metacommand, the $METACOMMAND_ERROR_HALT_STATE system variable, and the METACOMMAND_ERROR() conditional.
1.18.0.0 2017-06-24 Improved the speed of import of CSV files to Postgres and MySQL/MariaDB. Modified the EXPORT…APPEND…AS HTML metacommand to append tables inside the (first) </body> tag.
1.17.0.0 2017-05-28 Modified the specifications for the PROMPT ENTRY_FORM to allow checkboxes to be used.
1.16.9.0 2017-05-27 Added a DESCRIPTION keyword to the EXPORT metacommands.
1.16.8.0 2017-05-20 Added the VALUES export format.
1.16.7.0 2017-05-20 Added BOOLEAN_INT and BOOLEAN_WORDS metacommands. Allowed the PAUSE metacommand to take fractional timeout arguments. Added a ‘console_wait_when_done’ configuration parameter. Added the server name to the password prompt.
1.16.3.0 2017-04-23 Added a configuration option allowing the specification of additional configuration files to read. Added a MAX_INT configuration parameter and metacommand.
1.16.0.0 2017-03-25 Added the BEGIN SCRIPT, END SCRIPT, and EXECUTE SCRIPT metacommands.
1.15.0.0 2017-03-09 Added the TEE keyword to the WRITE, EXPORT, and EXPORT QUERY metacommands.
1.13.0.0 2017-03-05 Added the LOG_WRITE_MESSAGES metacommand and configuration parameter.
1.12.0.0 2017-03-04 Added a ‘boolean_words’ configuration option. Enabled reading of CSV files with newlines within delimited text data. Added the SKIP keyword to the IMPORT metacommand for CSV, ODS, and Excel data. Added the COLUMN_EXISTS conditional.
1.8.15.0 2017-01-14 Added a $LAST_ROWCOUNT system variable.
1.8.14.0 2016-11-13 Added evaluation of numeric types in input. Added ‘empty_strings’ configuration parameter and metacommand. Corrections to IMPORT metacommand for Firebird.
1.8.13.0 2016-11-07 Added the “-b” command-line option and configuration parameter.
1.8.12.0 2016-10-22 Added the RM_SUB metacommand.
1.8.11.0 2016-10-19 Added the SET COUNTER metacommand.
1.8.10.2 2016-10-17 Added $RUN_ID system variable Modified to recognize as text any imported data that contains only numeric values but where the first digit of any value is a zero.
1.8.8.0 2016-09-28 Added $CURRENT_ALIAS, $RANDOM, and $UUID system variables.
1.8.4.0 2016-08-13 Added logging of database close when autocommit is off. Added import from MS-Excel. Corrected parsing of numeric time zones.
1.7.3.0 2016-08-05 Added $OS system variable.
1.7.2.0 2016-06-11 Added DIRECTORY_EXISTS conditional and option to automatically make directories used by the EXPORT metacommand.
1.7.0.0 2016-05-20 Added NEWER_DATE and NEWER_FILE conditionals.
1.6.0.0 2016-05-15 Added CONSOLE SAVE metacommand. Added DSN connections. Added COPY QUERY and EXPORT QUERY metacommands.
1.4.4.0 2016-05-02 Added CONSOLE HIDE SHOW metacommands and allowed <Enter> in response to the CONSOLE WAIT metacommand, to continue without closing.
1.4.2.0 2016-05-02 Added a “Save as…” menu to the GUI console and changed the PAUSE and HALT metacommands to use a GUI if the console is on.
1.4.0.0 2016-04-30 Added a GUI console with a status bar and progress bar to which WRITE output and exported text will be written.
1.3.3.0 2016-04-09 Additions to ‘Save as…’ options in PROMPT DISPLAY metacommand, and date/time values exported to ODS.
1.3.2.0 2016-02-28 Enabled the use of a backslash as a line continuation character for SQL statements.
1.3.1.0 2016-02-20 Added PROMPT ENTRY_FORM and LOG metacommands.
1.2.15.0 2016-02-14 Added $DB_NAME, $DB_NEED_PWD, $DB_SERVER, and $DB_USER system variables. Added RAW as an export format for binary data. Added a PASSWORD keyword to the PROMPT ENTER_SUB metacommand. Allowed a password to be used in the CONNECT metacommand for Access. Other minor improvements and debugging.
1.2.10.0 2016-01-23 Added ENCODING keyword to IMPORT metacommand. Added TIMER metacommand and $TIMER system variable.
1.2.8.2 2016-01-21 Fixed extra quoting in drop table method. Fixed str coercion in TXT export.
1.2.8.0 2016-01-11 Suppressed column headers when EXPORTing to CSV and TSV with APPEND. Eliminated %H%M pattern to match time values in IMPORTed data.
1.2.7.1 2016-01-03 Modified import of integers to Postgres; added the AUTOCOMMIT metacommand and modified the BATCH metacommand; changed to explicitly roll back any uncommitted changes on exit; miscellaneous debugging.
1.2.4.6 2015-12-19 Modified quoting of column names for the COPY and IMPORT metacommands.
1.2.4.5 2015-12-17 Fixed asterisks in PROMPT ENTER_SUB.
1.2.4.4 2015-12-14 Fixed regexes for quoted filenames.
1.2.4.3 2015-12-13 Fixed -y option display; fixed parsing of WRITE CREATE_TABLE comment option; fixed parsing of backslashes in substitution strings on Windows.
1.2.4.0 2015-11-21 Added connections to PostgreSQL, SQL Server, MySQL, MariaDB, SQLite, and Firebird. Added numerous metacommands and conditional tests. Added reading of configuration files.
0.4.4.0 2010-06-20 Added INCLUDE, WRITE, EXPORT, SUB, EXECUTE, HALT, and IF (HASROWS, SQL_ERROR) metacommands.
0.3.1.0 2008-12-19 Executes SQL against Access, captures output of the last statement.