packages feed

pms-domain-service-0.0.6.0: pms-domain-service.cabal

cabal-version: 2.4
-- The cabal-version field refers to the version of the .cabal specification,
-- and can be different from the cabal-install (the tool) version and the
-- Cabal (the library) version you are using. As such, the Cabal (the library)
-- version used must be equal or greater than the version stated in this field.
-- Start from the specification version 2.2, the cabal-version field must be
-- the first thing in the cabal file.

-- Initial package description 'pms-domain-service' generated by
-- 'cabal init'. For further documentation, see:
--   http://haskell.org/cabal/users-guide/
--
-- The name of the package.
name:               pms-domain-service

-- The package version.
-- See the Haskell package versioning policy (PVP) for standards
-- guiding when and how versions should be incremented.
-- https://pvp.haskell.org
-- PVP summary:     +-+------- breaking API changes
--                  | | +----- non-breaking API additions
--                  | | | +--- code changes with no API change
version:            0.0.6.0

-- A short (one-line) description of the package.
synopsis:           pms-domain-service

-- A longer description of the package.
description:        README.md

-- The license under which the package is released.
license:            Apache-2.0

-- The file containing the license text.
license-file:       LICENSE

-- The package author(s).
author:             phoityne.hs@gmail.com

-- An email address to which users can send suggestions, bug reports, and patches.
maintainer:         phoityne.hs@gmail.com

-- A copyright notice.
copyright:          2025-2026 phoityne.hs@gmail.com
category:           AI
build-type:         Simple
homepage:           https://github.com/phoityne/pms-domain-service
bug-reports:        https://github.com/phoityne/pms-domain-service/issues

-- Extra doc files to be distributed with the package, such as a CHANGELOG or a README.
extra-doc-files:    README.md,
                    CHANGELOG.md

-- Extra source files to be distributed with the package, such as examples, or a tutorial module.
-- extra-source-files:

library
    -- Import common warning flags.
--    ghc-options: -Wall -threaded -Wno-orphans -Wno-x-partial -Wno-gadt-mono-local-binds
    ghc-options: -Wall -threaded -Wno-orphans -Wno-gadt-mono-local-binds

    -- Modules exported by the library.
    exposed-modules:  PMS.Domain.Service.DM.Type,
                      PMS.Domain.Service.DM.Constant,
                      PMS.Domain.Service.App.Control,
                      PMS.Domain.Service.DS.Core,
                      PMS.Domain.Service.DM.TH,
                      PMS.Domain.Service.DS.Utility,
                      PMS.Domain.Service.DS.State.Run,
                      PMS.Domain.Service.DS.State.Run.ToolsList,
                      PMS.Domain.Service.DS.State.Run.ToolsCall,
                      PMS.Domain.Service.DS.State.Run.PromptsList,
                      PMS.Domain.Service.DS.State.Run.PromptsGet,
                      PMS.Domain.Service.DS.State.Run.ResourcesTemplatesList,
                      PMS.Domain.Service.DS.State.Run.ResourcesList,
                      PMS.Domain.Service.DS.State.Run.ResourcesRead,
                      PMS.Domain.Service.DS.State.Start,
                      PMS.Domain.Service.DS.State.Start.Initialize,
                      PMS.Domain.Service.DS.State.Start.Initialized,
                      PMS.Domain.Service.DS.State.Stop

    -- Modules included in this library but not exported.
    -- other-modules:

    -- LANGUAGE extensions used by modules in this package.
    -- other-extensions:

    -- Other library packages from which modules are imported.
    build-depends:    base >= 4.18 && < 5,
                      transformers,
                      mtl,
                      text,
                      template-haskell,
                      monad-logger,
                      fast-logger,
                      safe-exceptions,
                      lens,
                      bytestring,
                      conduit,
                      data-default,
                      stm,
                      filepath,
                      directory,
                      aeson,
                      unordered-containers,
                      mustache,
                      network-uri,
                      pms-domain-model

    -- Directories containing source files.
    hs-source-dirs:   src

    -- Base language which the package is written in.
    default-language: Haskell2010
    -- default-extensions:  LambdaCase

test-suite pms-domain-service-test
    -- Import common warning flags.
    ghc-options: -Wall -threaded -Wno-orphans
--    ghc-options: -Wall -threaded -Wno-orphans -Wno-x-partial

    -- Base language which the package is written in.
    default-language: Haskell2010

    -- Modules included in this executable, other than Main.
    other-modules:    PMS.Domain.Service.App.ControlSpec

    -- LANGUAGE extensions used by modules in this package.
    -- other-extensions:

    -- The interface type and version of the test suite.
    type:             exitcode-stdio-1.0

    -- Directories containing source files.
    hs-source-dirs:   test

    -- The entrypoint to the test suite.
    main-is:          Spec.hs

    -- Test dependencies.
    build-depends:    base >= 4.18 && < 5,
                      hspec,
                      hspec-discover,
                      data-default,
                      stm,
                      monad-logger,
                      async,
                      unix,
                      lens,
                      pms-domain-model,
                      pms-domain-service
                      
    build-tool-depends:
      hspec-discover:hspec-discover