Hello Guilers, I'm pleased to announce Guile-DSV 0.7.2: https://github.com/artyom-poptsov/guile-dsv/releases/tag/v0.7.2 This release includes two important bugfixes: First of all, now parsers can check if a table have consistent column number between rows and throw an informative error when column numbers do not match. Second, the Guile-DSV table formatter now handles tables with less than two columns properly. See the full list of user-visible changes below. * What is Guile-DSV? Guile-DSV is a library that allows to parse Delimiter-Separated Values format (DSV). It supports two flavors of DSV: Unix-style[1] and RFC4180[2]. Also Guile-DSV is shipped with a program named "dsv" that allows to read and process DSV format (including delimiter change and conversion from one standard to another, formatting tables etc.) See README file for usage examples. * List of user visible changes Here's an excerpt from the NEWS file: --8<---------------cut here---------------start------------->8--- * Changes in version 0.7.2 (2024-08-04) ** Bugfixes *** Parsers now can check if the table rows have consistent lengths Guile-DSV table formatters would always fail when a table has inconsistent column number in rows. Now this is fixed by adding an additional check for the row length consistency to the parser. This behavior is enabled by default for the CLI. For =dsv->scm= and =dsv-string->scm= procedures validation is disabled by default. The rationale is that in CLI a user most likely wants to pretty-print a table, and in that case we currently cannot print a ill-formatted table anyways so it's reasonable to throw an error as soon as possible. For the programming API it is normal to read ill-formatted data as it is up to user how to handle the errors and there are more than one way to solve problems with data. Plus we keep the API backward-compatible with Guile-DSV 0.7.1. *** Table formatter now handles tables with less than 2 columns The Guile-DSV table formatter would always fail when a table has less than 2 columns. Now this is fixed. *** Fix =make distcheck= Now the command produces a distribution of the package as it should. ** Improvements to the project documentation *** New =ARCHITECTURE.org= file This file contains the overview of the Guile-DSV architecture (as proposed in .) *** New =CODE_OF_CONDUCT.org= file The document is a copy of converted into org-mode format. --8<---------------cut here---------------end--------------->8--- Thanks and happy hacking! - Artyom 1. http://www.catb.org/~esr/writings/taoup/html/ch05s02.html#id2901882 2. https://tools.ietf.org/html/rfc4180 -- Artyom "avp" Poptsov Home page: https://memory-heap.org/~avp/ CADR Hackerspace co-founder: https://cadrspace.ru/ GPG: D0C2 EAC1 3310 822D 98DE B57C E9C5 A2D9 0898 A02F