packages feed

dataframe-parsing-1.0.2.1: dataframe-parsing.cabal

cabal-version:      2.4
name:               dataframe-parsing
version:            1.0.2.1
synopsis:           Shared text/binary parsing helpers for the dataframe ecosystem.
description:
    Parsing primitives used by the @dataframe@ family: CSV-friendly text
    parsing (@DataFrame.Internal.Parsing@), low-level binary decoding
    helpers (@DataFrame.Internal.Binary@), and the runtime schema tag
    (@DataFrame.Internal.Schema@). Kept in a small dedicated package so
    @dataframe-csv@, @dataframe-parquet@, and @dataframe-operations@ can
    share these without depending on each other.

bug-reports:        https://github.com/mchav/dataframe/issues
license:            MIT
license-file:       LICENSE
author:             Michael Chavinda
maintainer:         mschavinda@gmail.com
copyright:          (c) 2024-2026 Michael Chavinda
category:           Data
tested-with:        GHC ==9.4.8 || ==9.6.7 || ==9.8.4 || ==9.10.3 || ==9.12.2

common warnings
    ghc-options:
        -Wincomplete-patterns
        -Wincomplete-uni-patterns
        -Wunused-imports
        -Wunused-local-binds
        -Wunused-packages

library
    import:             warnings
    exposed-modules:
                        DataFrame.Internal.Binary
                        DataFrame.Internal.Parsing
                        DataFrame.Internal.Parsing.Fast
                        DataFrame.Internal.Parsing.Fast.Common
                        DataFrame.Internal.Parsing.Fast.Double
                        DataFrame.Internal.Parsing.Fast.Int
                        DataFrame.Internal.Parsing.Fast.Token
                        DataFrame.Internal.Schema
    build-depends:      base >= 4 && < 5,
                        attoparsec >= 0.12 && < 0.15,
                        bytestring >= 0.11 && < 0.13,
                        bytestring-lexing >= 0.5 && < 0.6,
                        containers >= 0.6.7 && < 0.9,
                        dataframe-core ^>= 1.1,
                        text >= 2.1 && < 3,
                        time >= 1.12 && < 2,
                        vector >= 0.12 && < 0.14
    hs-source-dirs:     src
    default-language:   Haskell2010

test-suite tests
    import:             warnings
    type:               exitcode-stdio-1.0
    main-is:            Main.hs
    other-modules:      Properties.FastParsing
                        Unit.FastParsing
    build-depends:      base >= 4 && < 5,
                        bytestring >= 0.11 && < 0.13,
                        dataframe-parsing,
                        HUnit ^>= 1.6,
                        QuickCheck >= 2 && < 3,
                        text >= 2.1 && < 3
    hs-source-dirs:     tests
    ghc-options:        -O2
    default-language:   Haskell2010

benchmark field-parsers
    import:             warnings
    type:               exitcode-stdio-1.0
    main-is:            FieldParsers.hs
    build-depends:      base >= 4 && < 5,
                        bytestring >= 0.11 && < 0.13,
                        dataframe-parsing,
                        text >= 2.1 && < 3,
                        time >= 1.12 && < 2,
                        vector >= 0.12 && < 0.14
    hs-source-dirs:     bench
    ghc-options:        -O2
    default-language:   Haskell2010