Skip to content

v1.3.0

Latest

Choose a tag to compare

@ivar-rummelhoff ivar-rummelhoff released this 26 Mar 14:34
· 19 commits to main since this release

Breaking changes

  • We now strip (at most) one trailing newline from the result (i.e.
    standard output) of non-SQL external scripts, saving many uses of
    .stripped.
  • In a loop, when the row has fewer columns than the variables we bind,
    the extra variables are made undefined (rather than keeping their
    previous value).

Bug fixes

  • Handle non-ASCII characters and CR correctly.
  • Print line numbers error messages starting from 1 (not 0).
  • Wait for SIARD process to stop to avoid exceptions for small databases.
  • We now prevent nested iteration over the same result set (which has
    never worked as expected).
  • Fix parser issue leading to wrong SIARD metadata in some cases.

Improved warnings and errors

  • Better warnings when generating SIARD files.
  • Signal failure when metadata is specified for database objects not
    included in the generated SIARD file.
  • Show warning when metadata is missing for schemas, tables, views and
    table columns in the generated SIARD file
  • Prefix every log message with timestamp [hh:MM].
  • Used system specific line separator in log messages.
  • Show current variable bindings when assertions fail.
  • Improved failure messages.

Other improvements and new features

  • .as_integer now accepts initial and trailing whitespace characters,
    saving many uses of .stripped.
  • The values of 1x1 row sets can now be directly accessed using
    .stripped and .as_integer.
  • Strings can now be compared to row sets and iterated over like row sets,
    in which case it is assumed to consist of tab separated string values.
    (However, .size can still only be used for actual row sets.)
  • Strings and row sets can be compared with == and !=. (NB. If r==a
    and r==b for some row set r and strings a and b, we may still
    have a!=b due to different line endings.)
  • The development option -use-existing-SIARD has been added for when
    adjusting the metadata fails after the SIARD file has been generated
    (which can be very time consuming).

Examples

  • The existing examples have been adjusted and updated.
  • A new example has been added: hbr/befolkning.dbspec.
    (Alas, it uses a data dump which is not generally available.)