packages feed

avro-0.4.3.0: avro.cabal

cabal-version: 1.12

name:           avro
version:        0.4.3.0
synopsis:       Avro serialization support for Haskell
description:    Avro serialization and deserialization support for Haskell
category:       Data
homepage:       https://github.com/haskell-works/avro#readme
bug-reports:    https://github.com/haskell-works/avro/issues
author:         Thomas M. DuBuisson
maintainer:     Alexey Raga <alexey.raga@gmail.com>
license:        BSD3
license-file:   LICENSE
build-type:     Simple
extra-source-files:
    README.md
    ChangeLog.md
    test/data/enums.avsc
    test/data/internal-bindings.avsc
    test/data/karma.avsc
    test/data/logical.avsc
    test/data/maybe.avsc
    test/data/record.avsc
    test/data/reused.avsc
    test/data/small.avsc
    test/data/unions-no-namespace.avsc
    test/data/unions.avsc
    test/data/enums-object.json
    test/data/namespace-inference.json
    test/data/unions-object-a.json
    test/data/unions-object-b.json
    test/data/deconflict/reader.avsc
    test/data/deconflict/writer.avsc
    test/data/overlay/composite.avsc
    test/data/overlay/expectation.avsc
    test/data/overlay/primitives.avsc

source-repository head
  type: git
  location: https://github.com/haskell-works/avro

flag dev
  description: Use development GHC flags
  manual: True
  default: False

flag templatehaskell
  description: Build Avro.Deriving, which uses Template Haskell.
  manual: False
  default: True

library
  exposed-modules:
      Data.Avro
      Data.Avro.Codec
      Data.Avro.Decode
      Data.Avro.Decode.Get
      Data.Avro.Decode.Lazy
      Data.Avro.Decode.Lazy.Convert
      Data.Avro.Decode.Lazy.Deconflict
      Data.Avro.Decode.Lazy.FromLazyAvro
      Data.Avro.Decode.Lazy.LazyValue
      Data.Avro.Decode.Strict
      Data.Avro.Decode.Strict.Internal
      Data.Avro.DecodeRaw
      Data.Avro.Deconflict
      Data.Avro.Deriving
      Data.Avro.Deriving.NormSchema
      Data.Avro.EitherN
      Data.Avro.Encode
      Data.Avro.EncodeRaw
      Data.Avro.FromAvro
      Data.Avro.HasAvroSchema
      Data.Avro.JSON
      Data.Avro.Schema
      Data.Avro.ToAvro
      Data.Avro.Types
      Data.Avro.Types.Value
      Data.Avro.Zag
      Data.Avro.Zig
  hs-source-dirs: src
  other-extensions: OverloadedStrings
  default-language: Haskell2010
  build-depends:
      aeson
    , array
    , base >=4.8 && <5.0
    , base16-bytestring
    , bifunctors
    , binary
    , bytestring
    , containers
    , data-binary-ieee754
    , deepseq
    , fail
    , hashable
    , mtl
    , scientific
    , semigroups
    , tagged
    , text
    , tf-random
    , unordered-containers
    , vector
    , zlib
  if flag(templatehaskell)
    other-extensions: TemplateHaskell
    build-depends:
        template-haskell >=2.4
  if flag(dev)
    ghc-options: -Wall -Werror

test-suite test
  type: exitcode-stdio-1.0
  ghc-options: -threaded
  default-language: Haskell2010
  main-is: Spec.hs
  build-tool-depends: hspec-discover:hspec-discover
  other-modules:
      Avro.Codec.ArraySpec
      Avro.Codec.BoolSpec
      Avro.Codec.CodecRawSpec
      Avro.Codec.DoubleSpec
      Avro.Codec.FloatSpec
      Avro.Codec.Int64Spec
      Avro.Codec.MaybeSpec
      Avro.Codec.NestedSpec
      Avro.Codec.TextSpec
      Avro.Codec.ZigZagSpec
      Avro.Decode.Lazy.ContainerSpec
      Avro.Decode.Lazy.RawBlocksSpec
      Avro.Decode.Lazy.RawValuesSpec
      Avro.Decode.Lazy.ValuesSpec
      Avro.Deconflict.Reader
      Avro.Deconflict.Writer
      Avro.DeconflictSpec
      Avro.DefaultsSpec
      Avro.EncodeRawSpec
      Avro.JSONSpec
      Avro.NamespaceSpec
      Avro.NormSchemaSpec
      Avro.SchemaSpec
      Avro.THEncodeContainerSpec
      Avro.THEnumSpec
      Avro.THLogicalTypeSpec
      Avro.THReusedSpec
      Avro.THSimpleSpec
      Avro.THUnionSpec
      Avro.ToAvroSpec
      DecodeContainer
      Example1
      Paths_avro
  hs-source-dirs: test
  build-depends:
      QuickCheck
    , aeson
    , array
    , avro
    , base >=4.6 && <5
    , base16-bytestring
    , bifunctors
    , binary
    , bytestring
    , containers
    , directory
    , extra
    , fail
    , hashable
    , hspec
    , lens
    , lens-aeson
    , mtl
    , pure-zlib
    , scientific
    , semigroups
    , tagged
    , text
    , tf-random
    , transformers
    , unordered-containers
    , vector
  if flag(templatehaskell)
    other-extensions: TemplateHaskell
    build-depends:
        template-haskell
  if flag(dev)
    ghc-options: -Wall -Werror


benchmark bench-time
  default-language: Haskell2010
  type: exitcode-stdio-1.0
  main-is: Time.hs
  hs-source-dirs: bench
  build-depends:
      avro
    , base >=4.6 && <5

    , aeson
    , bytestring
    , containers
    , hashable
    , mtl
    , text
    , random
    , transformers
    , unordered-containers
    , vector

    -- benchmarking-specific libraries
    , gauge