Skip to content

Releases: dbohdan/sqawk

v0.24.0

10 May 20:27
Compare
Choose a tag to compare
  • Sqawk now works in Tcl 9.
  • Wide CJK character handling in Tabulate has been improved.

v0.23.1

24 Aug 17:14
Compare
Choose a tag to compare
  • Fixed a bug that caused an I/O error when Sqawk read a lot of data from standard input.

v0.23.0

09 Nov 19:08
Compare
Choose a tag to compare
  • A parser for JSON and JSON Lines has been added.
  • Unknown per-file options cause an error. No more silent typos!
  • The parser/serializer options arrays and dicts are unified into one option: kv (for "key-value"). kv=true acts as dicts=true; kv=false acts as arrays=true.
  • The indent option for the JSON serializer is renamed to pretty.
  • The Tcl serializer has new options: lines and pretty.
  • New SQLite functions are added for working with Tcl data: dict_exists, dict_get, lindex, llength, lrange, regexp, regsub.
  • Error messages are valid Tcl lists.

v0.22.1

31 Jul 12:22
Compare
Choose a tag to compare

This is a bugfix release.

  • Fixed Sqawk creating an empty file named close in the current directory.

v0.22.0

27 Jun 16:24
Compare
Choose a tag to compare

Changes in this version include:

  • New command line options:
    • -dbfile to store the SQLite database on disk rather than in memory. It lets you parse the data once and query it later, saving time.
    • -noinput, which stops Sqawk from reading from the standard input if it is given no input files. Use it with -dbfile when you only want to query an existing database file.
  • The script can now to be empty. This is useful with -dbfile.
  • You can insert data into an existing table over multiple invocations of Sqawk (with -dbfile) or in a single invocation with several input sources.
  • Most of the input parsers and the output serializers are now lazy. This results in:
    • A massive reduction in memory usage (e.g., inserting 1 000 000 rows now takes 40 MiB, not 900 MiB), which makes it feasible to work with larger datasets even in memory.
    • Approximately 20% slower parsing and serialization, a price well worth paying in the developer's view.

v0.21.0

03 Nov 10:32
Compare
Choose a tag to compare

Changes in this version include:

  • The new file option fields for the default parser awk lets you skip as well as merge parts of the input. It replaces the option merge.
  • You can disable the zeroth column (a0, b0, etc.) with the file option F0.
  • The zeroth column no longer counts towards NF.
  • raw is no longer a synonym for the parser awk.
  • The README has been much improved.