Change Log
Version 1.18.1
Released on Mar 26, 2023
- Update dependencies.
Version 1.18.0
Released on Mar 26, 2023
- Update dependencies.
- Update supported Go version to 1.18 or later.
Version 1.17.11
Released on Nov 5, 2022
- Prevent divide-by-zero error while loading csv files. (GitHub #89)
- Handle panics during processor executions.
Version 1.17.10
Released on Aug 14, 2022
- Fix a bug when loading views from cache.
Version 1.17.9
Released on Aug 14, 2022
- Sort the command options displayed in the help message. (GitHub #80)
- Fix some bugs.
Version 1.17.8
Released on Jul 24, 2022
- Allow URLs and Table identification functions to be used as table identifiers.
Version 1.17.7
Released on Jul 3, 2022
- Add system defined constants.
- Add the command option –scientific-notation.
- Handle NaN and Infinity.
- Add several numeric and datetime functions.
- Fix some bugs.
Version 1.17.6
Released on Jun 30, 2022
- Fix a bug in REPLACE query. (GitHub #79)
Version 1.17.5
Released on Jun 26, 2022
- Fix a bug of the CASE expression. (GitHub #78)
Version 1.17.4
Released on Jun 25, 2022
- Add the IF NOT EXISTS clause to the syntax of the CREATE TABLE statement. (GitHub #77)
Version 1.17.3
Released on Jun 19, 2022
- Set the default format to csv when the output is piped. (GitHub #71)
Version 1.17.1
Released on Jun 17, 2022
- Allow analytic functions to be used as operands in expressions. (GitHub #36)
- Set output format from file extension. (GitHub #76)
Version 1.17.0
Released on May 3, 2022
- Support column name wildcard for tables. (GitHub #68)
- Add a string function.
- TITLE_CASE (GitHub #48)
- Modify integer and float handling.
- Fixed a bug in the conversion between integer and float.
- Intuitive handling of integer and float.
- Allow exponential notation for float.
Version 1.16.0
Released on Feb 26, 2022
- Support JSON Lines format. (GitHub #58)
- Support BOX format as an export format. (GitHub #61)
Version 1.15.2
Released on June 13, 2021
- Allow empty key names in JSON output. (GitHub #57)
- Fix a bug of the “–allow-uneven-fields” option. (GitHub #59)
Version 1.15.1
Released on May 5, 2021
- Allow same table names on both sides of set operators. (GitHub #53)
- Add the command option “–allow-uneven-fields”. (GitHub #54)
- Fix a bug in parsing of set operations.
Version 1.15.0
Released on March 28, 2021
- Add regular expression functions.
- REGEXP_MATCH
- REGEXP_FIND
- REGEXP_FIND_SUBMATCHES
- REGEXP_FIND_ALL
- REGEXP_REPLACE
- Add Table-Valued functions.
- CSV_INLINE
- JSON_INLINE
Version 1.14.1
Released on March 21, 2021
- Fix a bug of dual table. (GitHub #49)
Version 1.14.0
Released on March 9, 2021
- Add the second argument to the DATETIME function to specify the time zone. (GitHub #43)
- Interpret date and time strings as strings instead of converting them to DATETIME values when parsing.
- Add the following items to the configuration file.
- timezone
- ansi_quotes
Version 1.13.8
Released on January 31, 2021
- Fix a bug in the “–import-format” option. (Github #41)
Version 1.13.7
Released on November 23, 2020
- Add the command option “–strict-equal”.
Version 1.13.6
Released on September 5, 2020
- Enclose csv values containing double-quotes automatically. (Github #37)
Version 1.13.2, 1.13.3
Tagged for Ubuntu PPA. No changes to the behavier.
Version 1.13.1
Released on May 22, 2020
- Change reference scope in lateral subquery. (Github #30)
Version 1.13.0
Released on May 20, 2020
- Support LATERAL join. (Github #24)
- Support USING join condition in FULL OUTER JOIN.
- Support $XDG_CONFIG_HOME environment variable for configuration files.
Version 1.12.5
Released on April 11, 2020
- Ignore all leading and trailing white spaces of the field name when specifying a field name.
Version 1.12.4
Released on February 4, 2020
- Fix a bug that arrow keys do not work in the interactive shell on Windows. (Github #26)
Version 1.12.3
Released on January 15, 2020
- Fix a bug of LIKE operator.
Version 1.12.2
Released on January 14, 2020
- Fix a bug of LIKE operator. (Github #25)
Version 1.12.1
Released on January 13, 2020
- Update syntax description about the command option “–strip-ending-line-break”.
Version 1.12.0
Released on January 12, 2020
- Append a newline at the end of created and updated files. (Github #22)
- Add the command option “–strip-ending-line-break”.
Version 1.11.8
Released on December 12, 2019
- Prevent query results from being written when the results are empty. (Github #21)
Version 1.11.7
Released on December 3, 2019
- Fix misspellings in the syntax subcommand.
Version 1.11.6
Released on October 31, 2019
- Modify the behavior of enclosures completion on the interactive shell. (Github #12)
Version 1.11.5
Released on July 6, 2019
- Add a built-in function. (Github #10)
- String Function
- SUBSTRING
- String Function
Version 1.11.4
Released on Jun 1, 2019
- Fix the following bug.
- NOT IN operator returns incorrect result in some cases.
Version 1.11.3
Released on Jun 1, 2019
- Implement FETCH clause that can be used in place of LIMIT clause in SELECT query.
- Fix the following bug.
- FALSE takes precedence over UNKNOWN in NOT IN operation.
Version 1.11.2
Released on May 26, 2019
- Add built-in functions.
- Aggregate Function
- STDEV
- STDEVP
- VAR
- VARP
- Analytic Function
- STDEV
- STDEVP
- VAR
- VARP
- Aggregate Function
Version 1.11.1
Released on May 19, 2019
- Fix the following bugs.
- Subqueries in recursive queries cannot reference that temporary tables.
Version 1.11.0
Released on May 19, 2019
- Enable enclosure characters to be escaped with double enclosures.
- Add the command option “–ansi-quotes”.
- Add the Flag “@@ANSI_QUOTES”.
- Fix the following bugs.
- Double backspaches in a string cannot be parsed correctly.
- Escaping in external command syntax cannot be parsed correctly.
- Versions are not compared correctly in check-update subcommand.
Version 1.10.6
Released on May 4, 2019
- Add subcommand option “–include-pre-release” to check-update subcommand.
Version 1.10.4
Released on May 3, 2019
- Fix the following bug.
- Panic occurrs when a subquery in comparison returns empty set.
Version 1.10.3
Released on May 3, 2019
- Add the following built-in funciton.
- NANO_TO_DATETIME
- Fix the following bug.
- Timezone not set correctly on second change.
- Disable automatic type conversion from number to datetime.
- Improve execusion performance.
Version 1.10.1
Released on April 28, 2019
- Improve execusion performance.
Version 1.10.0
Released on April 25, 2019
- Support UTF-16.
- Support automatic detection of character encoding.
- Remove the use of glide from support.
Version 1.9.19
Released on April 22, 2019
- Improve execusion performance.
Version 1.9.18
Released on April 20, 2019
- Change the settings of Limit-Recursion from configuration files to the command option.
- Remove “limit_recursion” from csvq_env.json.
- Add the command option “–limit-recursion”.
- Add the Flag “@@LIMIT_RECURSION”.
Version 1.9.17
Released on April 20, 2019
-
Set the limit of iterations for recursive queries.
The limit can be changed in configuration json file.
-
Fix the following bug.
- The global options are ignored by subcommands.
Version 1.9.16
Released on April 16, 2019
- Fix the following bug.
- Reference scopes cannot be refered from subquery. This bug has occurred in version 1.9.15.
Version 1.9.15
Released on April 16, 2019
- Fix the following bug.
- COUNT(null) returns the number of rows, but must return 0.
- Remove “Alloc” from resource statistics.
- Optimize memory usage in JOIN operation. In most cases, the execusion performance gets better, and in a few cases, it gets a little worse.
Version 1.9.14
Released on April 14, 2019
- Support SELECT INTO Variables statement.
Version 1.9.13
Released on April 13, 2019
- Support REPLACE (Insert or Update) query.
- Allow variable declaration in WHILE IN statement in user defined functions.
Version 1.9.12
Released on April 11, 2019
- Fix the following bug.
- Compound field values containing aggregate functions do not return the results if there are no rows in the result set.
Version 1.9.11
Released on April 11, 2019
- Allow flags to be used as values.
- Fix the following bug.
- Aggregate functions do not return the results if there are no rows in the result set.
Version 1.9.10
Released on April 10, 2019
- Make stdin table available for use in table object expressions.
- Enable dispose and reload of stdin table.
- Improve error handling.
Version 1.9.9
Released on April 3, 2019
- Reorganize return code. Maybe finalized.
Version 1.9.8
Released on April 2, 2019
- Improve signal handling to catch SIGINT, SIGQUIT, SIGTERM on several systems.
- Fix the following bug.
- Ordinal placeholders in select clause not recognized correctly.
Version 1.9.7
Released on April 1, 2019
- Fix syntax text.
- Improve mutual exclusion.
Version 1.9.6
Released on March 30, 2019
- Support SELECT FOR UPDATE syntax.
- Support cursor with a prepared statement.
- Make update operations safety in parallel processing.
Version 1.9.5
Released on March 24, 2019
- Make file operations safety in parallel processing.
- Modify the return code of external command errors from 16 to 1.
- Fix the following bug.
- Temporary tables have not been affected by transactions.
Version 1.9.4
Released on March 22, 2019
- Support prepared statement syntax.
- Organize the command return code.
Version 1.9.3
Released on March 20, 2019
-
Refactor and modify internal processes for csvq-driver.
This update does not include any functional changes to the csvq command except for bugs that will be found in the future.
Version 1.9.1
Released on March 4, 2019
- Fix the following bug.
- JSON parsing error in numeric values.
Version 1.9.0
Released on March 3, 2019
- Add the following command options.
- import-format
- delimiter-positions
- write-delimiter-positions
- Modify the behavior of the following command options.
- delimiter
- write-delimiter
- Add the following table attribute.
- DELIMITER_POSITIONS
- Make the Table Object Expressions available in the following statements.
- Insert Query
- Update Query
- Alter Table Query
- Show Fields Statement
Version 1.8.6
Released on February 27, 2019
- Modify “.txt” to be an extension that does not link to any file format. (Github #5)
Version 1.8.5
Released on February 25, 2019
- Support UTF-8 with Byte order mark.
- Support Single-Line Fixed-Length Format.
Version 1.8.4
Released on February 22, 2019
- Implement Check Update subcommand.
Version 1.8.3
Released on February 17, 2019
- Fix the following bugs.
- RETURN statement does not return a value in IF and WHILE statements.
- NOW Function returns different time from the specification in user-defined functions.
Version 1.8.2
Released on February 13, 2019
- Fix the following bug.
- Panic occurs when an empty environment variable is passed. (Github #4)
Version 1.8.1
Released on January 6, 2019
- Improve completer.
- Fix some bugs of completer.
Version 1.8.0
Released on December 31, 2018
- Support LTSV Format.
Version 1.7.3
Released on December 27, 2018
- Improve logics of parallel routine.
Version 1.7.2
Released on December 25, 2018
- Implement Syntax subcommand.
Version 1.7.1
Released on December 15, 2018
- Fix the following bugs.
- TableObject does not accept identifier as an argument.
Version 1.7.0
Released on December 14, 2018
- Enhance the interactive shell.
- Completion (default: true)
- Kill Whole Line (default: false)
- Vi-mode (default: false)
Version 1.6.7
Released on December 2, 2018
- Fork github.com/chzyer/readline and change dependency to github.com/mithrandie/readline-csvq to use the latest update that is not versioned.
Version 1.6.6
Released on November 27, 2018
- Fix fatal error of variable substitution in multithreading.
Version 1.6.5
Released on November 26, 2018
- Implement Flag Related Statements.
- ADD FLAG ELEMENT
- REMOVE FLAG ELEMENT
- Fix a bug of datetime formats configuration.
Version 1.6.4
Released on November 25, 2018
- Implement Identical Operator (“==”).
Version 1.6.3
Released on November 24, 2018
- Fix the following bug.
- Color output is on by default. (Github #3)
Version 1.6.2
Released on November 24, 2018
- Implement run-external-command statement.
- Add value expressions.
- Runtime Information.
- Add built-in commands.
- ECHO
- CHDIR
- PWD
- RELOAD CONFIG
- Add configuration items to csvq_env.json.
- interactive_shell.prompt
- interactive_shell.continuous_prompt
- Bug Fixes
Version 1.6.1
Released on November 19, 2018
- Fix a bug of colorize in JSON pretty print.
- Add –json-escape option.
Version 1.6.0
Released on November 18, 2018
- Support Environment Variables.
- Support Configuration Files and Pre-Load Statements.
- Add command options.
- enclose-all
- east-asian-encoding
- count-diacritical-sign
- count-format-code
Version 1.5.4
Released on November 9, 2018
- Fix a bug of string format.
Version 1.5.3
Released on November 8, 2018
- Implement EXECUTE statement.
- Implement NUMBER_FORMAT function.
- Make FORMAT function to determine the number of digits automatically when precision is not specified.
Version 1.5.2
Released on November 5, 2018
- Fix a bug in calculation of Shift_JIS byte length.
Version 1.5.1
Released on November 5, 2018
- Fix a bug of interactive shell that hide query results when the –out option is specified.
Version 1.5.0
Released on November 4, 2018
- Support Fixed-Length Format.
- Implement WIDTH function.
- Support operate with byte length in Shift_JIS encoding in the following string functions.
- BYTE_LEN
- LPAN
- RPAD
- Implement ALTER TABLE SET ATTRIBUTE statement.
Version 1.4.3
Released on October 20, 2018
- Fix return code when on-usage-error occurred.
- Add flags for write out.
Version 1.4.2
Released on October 18, 2018
- Fix output format problems on the specifications.
- Conversion to GigHub Flavored Markdown Format
- Ternary -> bool or empty string
- Null -> empty string
- Conversion to Org-mode Table Format
- Ternary -> bool or empty string
- Null -> empty string
- Conversion to GigHub Flavored Markdown Format
Version 1.4.1
Released on October 18, 2018
- Fix a bug of datetime conversion.
Version 1.4.0
Released on October 16, 2018
- Add output formats.
- Text Table for GitHub Flavored Markdown
- Text Table for Emacs Org-mode
Version 1.3.1
Released on October 14, 2018
- Fix a bug of output ANSI escape sequence.
Version 1.3.0
Released on October 14, 2018
- Support ANSI escape sequence.
- Enhance support for JSON.
- Load data from a JSON file with the JSON_TABLE expression in From Clause.
- Load data from a JSON data from standard input with the –json-query option.
- Export a result of a select query in JSON format with the –format option.
- Load a value from a JSON data using functions.
- JSON_VALUE
- JSON_OBJECT
- JSON_AGG (Aggregate Function)
- JSON_AGG (Analytic Function)
- Load a row value from a JSON data using the JSON_ROW expression.
Version 1.2.0
Released on September 26, 2018
- Support for Go 1.11 Modules.
Version 1.1.1
Released on April 5, 2018
- Implement string functions.
- INSTR
- LIST_ELEM
Version 1.1.0
Released on March 1, 2018
- Support for Go 1.10
Version 1.0.2
Released on December 8, 2017
- Fix some bugs of operetor precedence.
Version 1.0.1
Released on September 26, 2017
- Implement DISPOSE FUNCTION statement.
- Implement windowing clause in analytic function.
Version 1.0.0
Released on September 19, 2017
The first general release.