parseCSV "name" . printCSV not idempotent

Joachim Breitner mail at joachim-breitner.de
Sun Nov 7 04:43:08 EST 2010


Hi Jaap,

your CSV library is used in the Hackage2 project. I found that backup
and restore does not work with a pristine state, and the reason seems to
be a problem with your library: It either adds unnecessary newlines or
interprets empty lines at the end of the program for no apparent reason:

Prelude Text.CSV> (parseCSV "name" . printCSV) []
Right [[""]]
Prelude Text.CSV> (parseCSV "name" . printCSV) [[]]
Right [[""],[""]]
Prelude Text.CSV> (parseCSV "name" . printCSV) [[],[]]
Right [[""],[""]]
Prelude Text.CSV> (parseCSV "name" . printCSV) [["hi"],["ho"]]
Right [["hi"],["ho"],[""]]
Prelude Text.CSV> (parseCSV "name" . printCSV) [["hi"]]
Right [["hi"],[""]]
Prelude Text.CSV> 

Is that easy to fix?

Thanks,
Joachim



-- 
Joachim "nomeata" Breitner
  mail: mail at joachim-breitner.de | ICQ# 74513189 | GPG-Key: 4743206C
  JID: nomeata at joachim-breitner.de | http://www.joachim-breitner.de/
  Debian Developer: nomeata at debian.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
Url : http://www.haskell.org/pipermail/cabal-devel/attachments/20101107/a922b2de/attachment-0001.bin


More information about the cabal-devel mailing list