packages feed

hinterface-1.0.0: hinterface.cabal

cabal-version: >=1.22
name: hinterface
version: 1.0.0
license: BSD3
license-file: LICENSE
copyright: 2016-2019 Timo Koepke, Sven Heyll
maintainer: timo.koepke@googlemail.com, sven.heyll@gmail.com
author: Timo Koepke, Sven Heyll
homepage: https://github.com/lindenbaum/hinterface
synopsis: Haskell / Erlang interoperability library
description:
    A library for building nodes of a distributed Erlang system in Haskell.
    Nodes can be created and registered to an epmd, Erlang terms can be
    marshalled to/from Erlangs binary term representation and message can
    be sent to or received from processes running on a different node.
    In it's preliminary state hinterface supports of Erlangs binary terms
    and a subset of the distribution protocol.
category: Language
build-type: Simple
extra-source-files:
    README.md
    stack.yaml
    .travis.yml
    Setup.hs
    .gitignore

source-repository head
    type: git
    location: https://github.com/lindenbaum/hinterface.git

library
    exposed-modules:
        Util.IOExtra
        Util.BufferedIOx
        Util.Socket
        Network.BufferedSocket
        Util.Binary
        Util.FloatCast
        Foreign.Erlang.NodeState
        Foreign.Erlang.NodeData
        Foreign.Erlang.Epmd
        Foreign.Erlang.Digest
        Foreign.Erlang.Handshake
        Foreign.Erlang.Term
        Foreign.Erlang.LocalNode
        Foreign.Erlang.ControlMessage
        Foreign.Erlang.Mailbox
        Foreign.Erlang.Connection
    hs-source-dirs: src
    default-language: Haskell2010
    default-extensions: OverloadedStrings NamedFieldPuns
                        FlexibleContexts PatternSynonyms ViewPatterns
    ghc-options: -Wall -funbox-strict-fields
    build-depends:
        QuickCheck >=2.11 && <2.14,
        array >=0.5.2.0 && <0.6,
        async >=2.2.1 && <2.3,
        base >=4.9 && <5,
        binary >=0.8.5.1 && <0.9,
        bytestring >=0.10.8.2 && <0.11,
        containers >=0.5.11.0 && <0.7,
        cryptonite ==0.25.*,
        deepseq ==1.4.*,
        exceptions >=0.10.0 && <0.11,
        lifted-async >=0.10.0.2 && <0.11,
        lifted-base >=0.2.3.12 && <0.3,
        memory >=0.14.16 && <0.15,
        monad-control >=1.0.2.3 && <1.1,
        monad-logger >=0.3.29 && <0.4,
        mtl >=2.2.2 && <2.3,
        network >=2.6.3.6 && <2.9,
        random ==1.1.*,
        resourcet >=1.2.1 && <1.3,
        safe-exceptions >=0.1.7.0 && <0.2,
        stm >=2.4.5.0 && <2.6,
        text >=1.2.3.0 && <1.3,
        transformers >=0.5.5.0 && <0.6,
        transformers-base >=0.4.5.2 && <0.5,
        vector >=0.12.0.1 && <0.13

test-suite hinterface-test
    type: exitcode-stdio-1.0
    main-is: Spec.hs
    hs-source-dirs: test
    other-modules:
        Foreign.Erlang.NodeDataSpec
        Foreign.Erlang.HandshakeSpec
        Foreign.Erlang.ControlMessageSpec
        Foreign.Erlang.TermSpec
        Foreign.Erlang.Term2Experimental
    default-language: Haskell2010
    default-extensions: AllowAmbiguousTypes ConstraintKinds DataKinds
                        DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable
                        ExistentialQuantification FlexibleContexts FlexibleInstances
                        FunctionalDependencies GADTs GeneralizedNewtypeDeriving
                        KindSignatures LambdaCase MultiParamTypeClasses NamedFieldPuns
                        OverloadedLists OverloadedStrings PatternSynonyms RankNTypes
                        ScopedTypeVariables StandaloneDeriving TemplateHaskell
                        TupleSections TypeApplications TypeFamilies TypeInType
                        TypeOperators ViewPatterns
    other-extensions: CPP IncoherentInstances Strict StrictData
    ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
    build-depends:
        QuickCheck >=2.11.3 && <2.14,
        async >=2.2.2,
        base >=4.9 && <5,
        binary >=0.8.6.0,
        bytestring >=0.10.8.2,
        hinterface -any,
        hspec >=2.4 && <2.8,
        monad-logger >=0.3.30,
        transformers >=0.5.6.2,
        vector >=0.12.0.3