packages feed

greskell-1.1.0.2: greskell.cabal

name:                   greskell
version:                1.1.0.2
author:                 Toshio Ito <debug.ito@gmail.com>
maintainer:             Toshio Ito <debug.ito@gmail.com>
license:                BSD3
license-file:           LICENSE
synopsis:               Haskell binding for Gremlin graph query language
description:            Haskell binding for [Gremlin graph query language](http://tinkerpop.apache.org/gremlin.html).
                        See [README.md](https://github.com/debug-ito/greskell/blob/master/README.md) for detail.
                        .
                        This package is the main entry point of greskell family.
                        It re-exports [greskell-core](http://hackage.haskell.org/package/greskell-core) package,
                        and adds some useful functions to it.
category:               Data
cabal-version:          >= 1.10
build-type:             Simple
extra-source-files:     README.md, ChangeLog.md,
                        test/graphson/*.json
homepage:               https://github.com/debug-ito/greskell/
bug-reports:            https://github.com/debug-ito/greskell/issues/

library
  default-language:     Haskell2010
  hs-source-dirs:       src
  ghc-options:          -Wall -fno-warn-unused-imports
  -- default-extensions:   
  other-extensions:     OverloadedStrings, GeneralizedNewtypeDeriving,
                        FlexibleInstances, FlexibleContexts, MultiParamTypeClasses, TypeFamilies,
                        GADTs, DeriveTraversable, DeriveGeneric, StandaloneDeriving
  exposed-modules:      Data.Greskell,
                        Data.Greskell.Gremlin,
                        Data.Greskell.Binder,
                        Data.Greskell.Graph,
                        Data.Greskell.Graph.PropertyMap,
                        Data.Greskell.GTraversal,
                        Data.Greskell.AsLabel,
                        Data.Greskell.Extra,
                        Data.Greskell.PMap,
                        Data.Greskell.NonEmptyLike
  -- other-modules:        
  build-depends:        base >=4.9.0.0 && <4.14,
                        greskell-core >=0.1.3.0 && <0.2,
                        text >=1.2.2.1 && <1.3,
                        transformers >=0.5.2 && <0.6,
                        aeson >=0.11.2.1 && <1.6,
                        unordered-containers >=0.2.7.1 && <0.3,
                        semigroups >=0.18.2 && <0.20,
                        vector >=0.12.0.1 && <0.13,
                        exceptions >=0.8.3 && <0.11,
                        hashable >=1.2.7.0 && <1.4

test-suite spec
  type:                 exitcode-stdio-1.0
  default-language:     Haskell2010
  hs-source-dirs:       test
  ghc-options:          -Wall -fno-warn-unused-imports -fno-warn-deprecations "-with-rtsopts=-M512m"
  main-is:              Spec.hs
  -- default-extensions:   
  other-extensions:     OverloadedStrings
  other-modules:        Data.Greskell.BinderSpec,
                        Data.Greskell.GTraversalSpec,
                        Data.Greskell.GremlinSpec,
                        Data.Greskell.GraphSpec,
                        Data.Greskell.Graph.PropertyMapSpec,
                        Data.Greskell.ExtraSpec,
                        Data.Greskell.PMapSpec
  build-depends:        base, text, aeson,  unordered-containers,
                        greskell, greskell-core,
                        hspec >=2.2.3,
                        bytestring >=0.10.8.1 && <0.11

test-suite doctest
  type:                 exitcode-stdio-1.0
  default-language:     Haskell2010
  hs-source-dirs:       test
  ghc-options:          -Wall -fno-warn-unused-imports "-with-rtsopts=-M512m"
  main-is:              DocTest.hs
  build-depends:        base,
                        doctest >=0.11 && <0.18,
                        doctest-discover >=0.1.0.8 && <0.3


flag hint-test
  description: Do tests that use Haskell interpreter (hint package).
               These tests depend on the behavior of the hint package, so it may be unstable.
               Disable the flag to skip the tests. Or, maybe you should disable concurrent build.
  default: True
  manual: True

test-suite hint-test-suite
  if !flag(hint-test)
    buildable: False
  type:                 exitcode-stdio-1.0
  default-language:     Haskell2010
  hs-source-dirs:       test
  ghc-options:          -Wall -fno-warn-unused-imports "-with-rtsopts=-M512m"
  main-is:              HintTest.hs
  build-depends:        base, hspec,
                        greskell, 
                        hint >=0.6 && <0.10


flag server-test
  description: Do tests with Gremlin Server.
  default: False

test-suite server-test-suite
  type:                 exitcode-stdio-1.0
  default-language:     Haskell2010
  hs-source-dirs:       test
  ghc-options:          -Wall -fno-warn-unused-imports "-with-rtsopts=-M512m"
  main-is:              ServerTest.hs
  -- default-extensions:   
  other-extensions:     OverloadedStrings, TypeFamilies
  other-modules:        ServerTest.Common
  if flag(server-test)
    -- Explicitly remove dependency. See https://github.com/haskell/cabal/issues/1725
    build-depends:        base, aeson, hspec, text, unordered-containers, vector,
                          greskell, greskell-core,
                          scientific >=0.3.4.9 && <0.4,
                          greskell-websocket >=0.1.0.0 && <0.2,
                          safe-exceptions >=0.1.6 && <0.2
  else
    buildable: False


flag server-behavior-test
  description: Tests about the behavior of Gremlin Server, rather than greskell.
               Note that this test clears the content of the Gremlin Server.
  default: False
  manual: True

test-suite server-behavior-test-suite
  type:                 exitcode-stdio-1.0
  default-language:     Haskell2010
  hs-source-dirs:       test
  ghc-options:          -Wall -fno-warn-unused-imports "-with-rtsopts=-M512m"
  main-is:              ServerBehaviorTest.hs
  -- default-extensions:   
  other-extensions:     OverloadedStrings
  other-modules:        ServerTest.Common
  if flag(server-behavior-test)
    build-depends:        base, aeson, hspec, text, unordered-containers, vector,
                          greskell, greskell-core,
                          scientific >=0.3.4.9 && <0.4,
                          greskell-websocket >=0.1.0.0 && <0.2,
                          safe-exceptions >=0.1.6 && <0.2
  else
    buildable: False


source-repository head
  type:                 git
  location:             https://github.com/debug-ito/greskell.git