Encode and decode separated values (CSV, PSV, ...)

Version on this page:0.5@rev:1
LTS Haskell 14.27:0.4.1@rev:2
Stackage Nightly 2019-09-21:0.5@rev:1
Latest on Hackage:0.5@rev:3

See all snapshots sv-core appears in

BSD-3-Clause licensed by George Wilson
Maintained by
This version can be pinned in stack with:sv-core-0.5@sha256:c8c51b0249eaaad5824e598f4fce1bda5dc3736604f8d4f33e0c1438cb1b4def,4138

sv-core is the decoding and encoding for the sv CSV library. This is split off into its own package so that one swap out sv's parser without incurring a dependency on the default parser (hw-dsv)

For an example, see sv-cassava


Revision history for sv-core

0.5 – 2019-08-13

  • Change Decode to use lazy Writer. This allows the many combinator to work in infinite cases, such as the useful pattern many ignore, which ignores the rest of the columns.

0.4.1 – 2019-04-02

  • Add displayErrors, which pretty prints DecodeErrors.
  • Add dieOnError, which calls exitFailure in the case of DecodeErrors

0.4 – 2019-01-14

  • Use attoparsec for decoding in double, which is faster and more accurate
  • Deprecate rational decoder. double is now better in both speed and accuracy.
  • Add doubleFast, a fast and correct way to render doubles. The only downside is that it does not satisfy a round-trip property with any decoder.

0.3.1 – 2019-01-04

  • Add read and read' decoders

0.3 – 2018-09-26

  • Re-release 0.2.2 as 0.3 due to a change in error messages that broke sv’s tests

0.2.2 – 2018-08-23

  • Add rational and withTextReadable. rational can be more accurate than double but is slower.

0.2.1 – 2018-08-10

  • Add column-name-based encoding. NameEncode, NameEncode’, and related functions

0.2 – 2018-07-25

  • Add column-name-based decoding NameDecode, NameDecode’, and associated functions such as ‘column’.
  • Add some extra constructors to DecodeError for new errors

0.1 – 2018-07-19

  • Split off from sv-0.1