[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ANN] Guile-DSV 0.2.0 released
From: |
Artyom Poptsov |
Subject: |
[ANN] Guile-DSV 0.2.0 released |
Date: |
Thu, 16 Apr 2015 08:40:51 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) |
Hello Guilers!
I'm pleased to announce Guile-DSV 0.2.0 release:
https://github.com/artyom-poptsov/guile-dsv/releases/tag/v0.2.0
A GPG-signed package for the release can be found here:
ftp://memory-heap.org/software/guile-dsv/
Guile-DSV is a GNU Guile module for reading and writing of the DSV
format. [1]
There's bad news and good news related to this announcement: the bad
news is that the Guile-DSV API was changed. The good news is that the
API was changed for a purpose.
With this release, Guile-DSV is now capable of reading and writing of
RFC 4180 (CSV) format, [2] and the Unix reader/writer has got support of
backslash escaped non-printable symbols and continuation of records by
means of escaped newlines.
Please see the documentation for the description of the API.
Here an excerpt from the NEWS file:
--8<---------------cut here---------------start------------->8---
* Changes in version 0.2.0 (2015-04-16)
** API change
Procedures were renamed:
- 'dsv-string->list' was renamed to 'dsv-string->scm'.
- 'list->dsv-string' was renamed to 'scm->dsv-string'.
- 'dsv-read' was renamed to 'dsv->scm'.
- 'dsv-write' was renamed to 'scm->dsv'.
Also see the procedure-specific changes below.
** Add RFC 4180 parser
Procedures now accept optional keyed argument called 'format' that allows
to switch between the Unix-style DSV format and the RFC 4180 (CSV) format.
** Unix parser now handles C-style backslash escapes
as described in
<http://www.catb.org/~esr/writings/taoup/html/ch05s02.html#id2901882>
Specifically when the format is set to 'unix', 'dsv-string->scm' and
'dsv->scm' now ignore backslash-escaped newlines; also all the procedures
handle escaped nonprintable characters properly.
** Procedures now throw 'dsv-parser-error' on an error
** 'dsv-string->scm' now returns a table
The procedure now returns a table (a list of lists) in which every inlined
list represents a row of the table.
** New 'set-debug!' procedure in (dsv)
The procedure allows to enable or disable debugging traces. The debug mode
is disabled by default.
** 'dsv-string->scm' and 'dsv->scm' now accept 'comment-prefix'
'comment-symbol' argument is renamed to 'commen-prefix' and expected to be
a string instead of a char.
** 'scm->dsv' and 'scm->dsv-string' procedures add a line break
The procedures now add a line break that is default for a specified format
at the end of lines.
** 'guess-delimiter' in (dsv) now accepts an optional 'known-delimiters'
argument
The argument can be used to privide the procedure with the list of
delimiters to test to.
** Documentation update
Description of the API was updated and more usage examples was added.
--8<---------------cut here---------------end--------------->8---
The project was started because of personal needs, but there's hope that
it will be useful for other Guilers as well. Comments, suggestions and
(of course) bug-reports are welcome.
Thanks!
- Artyom
[1] https://en.wikipedia.org/wiki/Delimiter-separated_values
[2] https://tools.ietf.org/html/rfc4180
--
Artyom V. Poptsov <address@hidden>; GPG Key: 0898A02F
Home page: http://poptsov-artyom.narod.ru/
signature.asc
Description: PGP signature
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [ANN] Guile-DSV 0.2.0 released,
Artyom Poptsov <=