File cassava.cabal of Package ghc-cassava

cabal-version:       1.12
Name:                cassava
Version:             0.5.4.0
-- Remove x-revision when you bump the version.
x-revision:          1

Synopsis:            A CSV parsing and encoding library
Description: {

@cassava@ is a library for parsing and encoding [RFC 4180](https://tools.ietf.org/html/rfc4180)
compliant [comma-separated values (CSV)](https://en.wikipedia.org/wiki/Comma-separated_values) data,
which is a textual line-oriented format commonly used for exchanging tabular data.
.
@cassava@'s API includes support for
.
- Index-based record-conversion
- Name-based record-conversion
- Typeclass directed conversion of fields and records
- Built-in field-conversion instances for standard types
- Customizable record-conversion instance derivation via GHC generics
- Low-level [bytestring](https://hackage.haskell.org/package/bytestring) builders (see "Data.Csv.Builder")
- Incremental decoding and encoding API (see "Data.Csv.Incremental")
- Streaming API for constant-space decoding (see "Data.Csv.Streaming")
.
Moreover, this library is designed to be easy to use; for instance, here's a
very simple example of encoding CSV data:
.
>>> Data.Csv.encode [("John",27),("Jane",28)]
"John,27\r\nJane,28\r\n"
.
Please refer to the documentation in "Data.Csv" and the included [README](#readme) for more usage examples.

}
Homepage:            https://github.com/haskell-hvr/cassava
License:             BSD3
License-file:        LICENSE
Bug-reports:         https://github.com/haskell-hvr/cassava/issues
Copyright:           (c) 2012 Johan Tibell
                     (c) 2012 Bryan O'Sullivan
                     (c) 2011 MailRank, Inc.
Author:              Johan Tibell
Maintainer:          https://github.com/haskell-hvr/cassava
Category:            Text, Web, CSV
Build-type:          Simple
Extra-source-files:  examples/*.hs,
                     CHANGES.md,
                     README.md
Tested-with:
  GHC == 9.12.2
  GHC == 9.10.2
  GHC == 9.8.4
  GHC == 9.6.7
  GHC == 9.4.8
  GHC == 9.2.8
  GHC == 9.0.2
  GHC == 8.10.7
  GHC == 8.8.4
  GHC == 8.6.5
  GHC == 8.4.4
  GHC == 8.2.2
  GHC == 8.0.2

----------------------------------------------------------------------------

source-repository head
  type:     git
  location: https://github.com/haskell-hvr/cassava.git

Library
  default-language: Haskell2010
  other-extensions:
    BangPatterns
    CPP
    DataKinds
    DefaultSignatures
    DeriveFunctor
    FlexibleContexts
    FlexibleInstances
    KindSignatures
    MultiParamTypeClasses
    OverloadedStrings
    PolyKinds
    Rank2Types
    ScopedTypeVariables
    TypeOperators
    UndecidableInstances

  hs-source-dirs: src

  Exposed-modules:
    Data.Csv
    Data.Csv.Builder
    Data.Csv.Incremental
    Data.Csv.Parser
    Data.Csv.Streaming

  Other-modules:
    Data.Csv.Conversion
    Data.Csv.Conversion.Internal
    Data.Csv.Encoding
    Data.Csv.Types
    Data.Csv.Util

  Build-depends:
      base         >= 4.9      && < 5
    , array        >= 0.4      && < 0.6
    , attoparsec   >= 0.11.3.0 && < 0.15
    , bytestring   >= 0.10.4   && < 0.13
    , containers   >= 0.4.2    && < 1
    , deepseq      >= 1.1      && < 1.6
    , hashable                    < 2
    , scientific   >= 0.3.4.7  && < 0.4
    , text                        < 2.2
    , text-short   == 0.1.*
    , transformers >= 0.2      && < 0.7
    , unordered-containers        < 0.3
    , vector       >= 0.8      && < 0.14
    , Only         >= 0.1      && < 0.1.1

  ghc-options:
    -Wall
    -- https://ghc.haskell.org/trac/ghc/wiki/Migration/8.0#Recommendationsforforward-compatibility
    -Wcompat
    -Wnoncanonical-monad-instances

  if impl(ghc >= 8.8)
    ghc-options: -Wno-star-is-type
  else
    ghc-options: -Wnoncanonical-monadfail-instances

  if impl(ghc >= 8.2)
    ghc-options: -Wcpp-undef

----------------------------------------------------------------------------

Test-suite unit-tests
  default-language: Haskell2010

  Type: exitcode-stdio-1.0
  Main-is: UnitTests.hs
  -- dependencies with version constraints inherited via lib:cassava
  Build-depends: attoparsec
               , base                   >= 4.11 && < 5
               , bytestring
               , cassava
               , hashable
               , scientific
               , text
               , unordered-containers
               , vector
  -- extra dependencies not already used by lib:cassava
  build-depends: HUnit < 1.7
               , QuickCheck >= 2.14 && < 3
               , quickcheck-instances >= 0.3.12 && < 0.4
               , test-framework == 0.8.*
               , test-framework-hunit == 0.3.*
               , test-framework-quickcheck2 == 0.3.*

  hs-source-dirs: tests

  ghc-options:
    -Wall
    -- https://ghc.haskell.org/trac/ghc/wiki/Migration/8.0#Recommendationsforforward-compatibility
    -Wcompat
    -Wcpp-undef
    -Wnoncanonical-monad-instances

  if impl(ghc >= 8.8)
    ghc-options: -Wno-star-is-type
  else
    ghc-options: -Wnoncanonical-monadfail-instances
openSUSE Build Service is sponsored by