packages feed

pms-infra-agent-server-0.0.1.0: pms-infra-agent-server.cabal

cabal-version:      2.4
name:               pms-infra-agent-server
version:            0.0.1.0
synopsis:           TCP server listener library for pty-mcp-server agent tools
description:        Provides agent-server-* MCP tools: bind/listen/accept thread,
                    event queue, read/write over accepted connections.
homepage:           https://hackage.haskell.org/package/pty-mcp-server
bug-reports:        https://github.com/phoityne/pty-mcp-server/issues
license:            Apache-2.0
license-file:       LICENSE
author:             phoityne.hs@gmail.com
maintainer:         phoityne.hs@gmail.com
copyright:          2024 phoityne.hs@gmail.com
category:           System
build-type:         Simple
extra-doc-files:    CHANGELOG.md

common warnings

library
    import:           warnings
    default-extensions: GADTs TypeFamilies
    exposed-modules:
        PMS.Infra.Agent.Server.CoreModel.Type
        PMS.Infra.Agent.Server.CoreModel.TH
        PMS.Infra.Agent.Server.CoreModel.Constant
        PMS.Infra.Agent.Server.CoreModel.Utility
        PMS.Infra.Agent.Server.Interface.Network
        PMS.Infra.Agent.Server.ProjectedContext.Core
        PMS.Infra.Agent.Server.ProjectedContext.Utility
        PMS.Infra.Agent.Server.ApplicationBase.Control
        PMS.Infra.Agent.Server.ApplicationBase.State.Idle
        PMS.Infra.Agent.Server.ApplicationBase.State.Listening
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.ServerListen
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.ServerRead
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.ServerWrite
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.ServerReadByte
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.ServerWriteByte
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.ServerClose
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.ServerStatus
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.ServerEvents
        PMS.Infra.Agent.Server.ApplicationBase.State.Connected.InternalClientDisconnected
    build-depends:
        base                  >= 4.18 && < 5,
        data-default,
        monad-logger,
        mtl,
        lens,
        text,
        safe-exceptions,
        fast-logger,
        conduit,
        bytestring,
        transformers,
        stm,
        async,
        network,
        aeson,
        containers,
        template-haskell,
        iproute,
        pms-domain-model
    hs-source-dirs:   src
    default-language: Haskell2010

test-suite pms-infra-agent-server-test
    import:           warnings
    default-language: Haskell2010
    type:             exitcode-stdio-1.0
    hs-source-dirs:   test
    main-is:          Spec.hs
    other-extensions: LambdaCase
    ghc-options:      -Wno-missing-home-modules
    build-depends:
        base ^>=4.18.0.0,
        hspec,
        hspec-discover,
        directory,
        process,
        stm,
        async,
        aeson,
        network,
        data-default,
        lens,
        containers,
        fast-logger,
        transformers,
        bytestring,
        iproute,
        safe-exceptions,
        pms-domain-model,
        pms-infra-agent-server
    build-tool-depends:
        hspec-discover:hspec-discover