Skip to content

Latest commit

 

History

History
758 lines (459 loc) · 17.3 KB

CHANGELOG.md

File metadata and controls

758 lines (459 loc) · 17.3 KB

Change Log

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

Version 1.17.5

Released on Jun 26, 2022

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.
  • 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

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

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

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

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

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.

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

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.