packages feed

plexus-synapse-3.13.0: plexus-synapse.cabal

cabal-version:      3.0
name:               plexus-synapse
version:            3.13.0
synopsis:           Schema-driven CLI for Plexus RPC servers
license:            MIT
author:
maintainer:
build-type:         Simple

flag build-examples
  description: Build example programs (schema-discovery)
  default:     False
  manual:      True

library
  exposed-modules:
    Synapse.Schema.Types
    Synapse.Schema.Functor
    Synapse.Monad
    Synapse.Log
    Synapse.Algebra.Navigate
    Synapse.Algebra.Render
    Synapse.Algebra.Walk
    Synapse.Algebra.Recursion
    Synapse.Transport
    Synapse.Cache
    Synapse.Deprecation
    Synapse.Renderer
    Synapse.IR.Types
    Synapse.IR.Builder
    Synapse.IR.Cache
    Synapse.Bidir
    Synapse.CLI.Help
    Synapse.CLI.Parse
    Synapse.CLI.Support
    Synapse.CLI.Template
    Synapse.CLI.Transform
    Synapse.CLI.Similarity
    Synapse.Backend.Discovery
    Synapse.Self.Commands
    Synapse.Self.Template
    Synapse.Self.Pattern
    Synapse.Self.Examples
    Synapse.Self.Debugger
    Synapse.Self.Protocol.Validator
    Synapse.Self.Protocol.StreamTracker
    Synapse.Self.Protocol.Reporter
    Synapse.Self.Protocol.TestRunner
  build-depends:
    base >= 4.17 && < 5,
    plexus-protocol,
    aeson >= 2.0 && < 2.3,
    aeson-pretty >= 0.8 && < 0.9,
    text >= 2.0 && < 2.2,
    bytestring >= 0.11 && < 0.13,
    websockets >= 0.13 && < 0.14,
    network >= 3.1 && < 3.3,
    async >= 2.2 && < 2.3,
    stm >= 2.5 && < 2.6,
    streaming >= 0.2 && < 0.3,
    mtl >= 2.3 && < 2.4,
    transformers >= 0.6 && < 0.7,
    containers >= 0.6 && < 0.8,
    unordered-containers >= 0.2 && < 0.3,
    hashable >= 1.4 && < 1.6,
    prettyprinter >= 1.7 && < 1.8,
    mustache >= 2.4 && < 2.5,
    directory >= 1.3 && < 1.4,
    filepath >= 1.4 && < 1.6,
    yaml >= 0.11 && < 0.12,
    vector >= 0.12 && < 0.14,
    scientific >= 0.3 && < 0.4,
    regex-tdfa >= 1.3 && < 1.4,
    time >= 1.12 && < 1.15,
    array >= 0.5 && < 0.6,
    process >= 1.6 && < 1.7,
    fast-logger >= 3.0 && < 3.3,
    katip >= 0.8 && < 0.9
  hs-source-dirs:   src
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
    DeriveGeneric
    DeriveAnyClass
    DerivingStrategies
    GeneralizedNewtypeDeriving
    LambdaCase
    RecordWildCards

executable synapse
  main-is:          Main.hs
  autogen-modules:  Paths_plexus_synapse
  other-modules:    Paths_plexus_synapse
  build-depends:
    base >= 4.17 && < 5,
    plexus-protocol,
    plexus-synapse,
    aeson >= 2.0 && < 2.3,
    text >= 2.0 && < 2.2,
    bytestring >= 0.11 && < 0.13,
    mtl >= 2.3 && < 2.4,
    containers >= 0.6 && < 0.8,
    directory >= 1.3 && < 1.4,
    filepath >= 1.4 && < 1.6,
    katip >= 0.8 && < 0.9,
    optparse-applicative >= 0.18 && < 0.19,
    prettyprinter >= 1.7 && < 1.8,
    time >= 1.12 && < 1.14
  hs-source-dirs:   app
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
    RecordWildCards
    LambdaCase

executable schema-discovery
  main-is:          SchemaDiscovery.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-protocol,
    plexus-synapse,
    aeson >= 2.0 && < 2.3,
    text >= 2.0 && < 2.2,
    streaming >= 0.2 && < 0.3
  hs-source-dirs:   examples
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  if !flag(build-examples)
    buildable: False

executable reporter-demo
  main-is:          ReporterDemo.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-synapse,
    text >= 2.0 && < 2.2
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  if !flag(build-examples)
    buildable: False

executable validation-report-test
  main-is:          ValidationReportTest.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-synapse,
    text >= 2.0 && < 2.2,
    aeson >= 2.0 && < 2.3
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  if !flag(build-examples)
    buildable: False

executable protocol-test-demo
  main-is:          ProtocolTestDemo.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-synapse,
    text >= 2.0 && < 2.2
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  if !flag(build-examples)
    buildable: False

test-suite cli-test
  type:             exitcode-stdio-1.0
  main-is:          CLISpec.hs
  build-depends:
    base >= 4.17 && < 5,
    text >= 2.0 && < 2.2,
    process >= 1.6 && < 1.7,
    hspec >= 2.10 && < 2.12
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  ghc-options:      -threaded

test-suite ir-test
  type:             exitcode-stdio-1.0
  main-is:          IRSpec.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-synapse,
    text >= 2.0 && < 2.2,
    containers >= 0.6 && < 0.8,
    hspec >= 2.10 && < 2.12,
    aeson >= 2.2 && < 2.3,
    bytestring >= 0.11 && < 0.13,
    katip >= 0.8 && < 0.9
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
    LambdaCase
    RecordWildCards
  ghc-options:      -threaded

test-suite typeref-json
  type:             exitcode-stdio-1.0
  main-is:          TypeRefJson.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-synapse,
    text >= 2.0 && < 2.2,
    aeson >= 2.2 && < 2.3,
    aeson-pretty >= 0.8 && < 0.9,
    bytestring >= 0.11 && < 0.13
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  ghc-options:      -threaded

test-suite parse-test
  type:             exitcode-stdio-1.0
  main-is:          ParseSpec.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-synapse,
    text >= 2.0 && < 2.2,
    aeson >= 2.2 && < 2.3,
    containers >= 0.6 && < 0.8,
    vector >= 0.12 && < 0.14,
    hspec >= 2.10 && < 2.12
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  ghc-options:      -threaded

test-suite path-normalization-test
  type:             exitcode-stdio-1.0
  main-is:          PathNormalizationSpec.hs
  build-depends:
    base >= 4.17 && < 5,
    text >= 2.0 && < 2.2,
    hspec >= 2.10 && < 2.12
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  ghc-options:      -threaded

test-suite websocket-raw-test
  type:             exitcode-stdio-1.0
  main-is:          WebSocketRaw.hs
  build-depends:
    base >= 4.17 && < 5,
    text >= 2.0 && < 2.2,
    aeson >= 2.2 && < 2.3,
    bytestring >= 0.11 && < 0.13,
    websockets >= 0.13 && < 0.14
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  ghc-options:      -threaded

test-suite bidir-test
  type:             exitcode-stdio-1.0
  main-is:          BidirSpec.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-protocol,
    plexus-synapse,
    text >= 2.0 && < 2.2,
    bytestring >= 0.11 && < 0.13,
    aeson >= 2.2 && < 2.3,
    hspec >= 2.10 && < 2.12
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
    RecordWildCards
  ghc-options:      -threaded

test-suite bidir-integration-test
  type:             exitcode-stdio-1.0
  main-is:          BidirIntegrationSpec.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-synapse,
    text >= 2.0 && < 2.2,
    containers >= 0.6 && < 0.8,
    hspec >= 2.10 && < 2.12,
    katip >= 0.8 && < 0.9
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
    RecordWildCards
  ghc-options:      -threaded

test-suite stream-tracker-test
  type:             exitcode-stdio-1.0
  main-is:          StreamTrackerSpec.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-synapse,
    text >= 2.0 && < 2.2,
    aeson >= 2.2 && < 2.3,
    bytestring >= 0.11 && < 0.13,
    hspec >= 2.10 && < 2.12
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  ghc-options:      -threaded

test-suite deprecation-test
  type:             exitcode-stdio-1.0
  main-is:          DeprecationSpec.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-protocol,
    plexus-synapse,
    text >= 2.0 && < 2.2,
    aeson >= 2.0 && < 2.3,
    containers >= 0.6 && < 0.8,
    directory >= 1.3 && < 1.4,
    hspec >= 2.10 && < 2.12
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  ghc-options:      -threaded

test-suite ir12-method-role-test
  type:             exitcode-stdio-1.0
  main-is:          IR12MethodRoleSpec.hs
  build-depends:
    base >= 4.17 && < 5,
    plexus-protocol,
    plexus-synapse,
    aeson >= 2.2 && < 2.3,
    bytestring >= 0.11 && < 0.13,
    hspec >= 2.10 && < 2.12
  hs-source-dirs:   test
  default-language: GHC2021
  default-extensions:
    OverloadedStrings
  ghc-options:      -threaded