packages feed

rhine-terminal-1.8: rhine-terminal.cabal

cabal-version: 2.2
name: rhine-terminal
version: 1.8
synopsis: Terminal backend for Rhine
description: This package provides an example of a `terminal` based program using rhine.
license: BSD-3-Clause
license-file: LICENSE
author: Manuel Bärenz, Jun Matsushita
maintainer: programming@manuelbaerenz.de, jun@iilab.org
-- copyright:
category: FRP
build-type: Simple
extra-source-files: ChangeLog.md
extra-doc-files: README.md

source-repository head
  type: git
  location: https://github.com/turion/rhine.git

source-repository this
  type: git
  location: https://github.com/turion/rhine.git
  tag: v1.6

common opts
  build-depends:
    automaton ^>=1.8,
    base >=4.18 && <4.22,
    exceptions >=0.10.4,
    rhine ^>=1.8,
    terminal >=0.2.0.0,
    text >=1.2,
    time >=1.9.3,
    transformers >=0.5,

  default-language: Haskell2010
  ghc-options:
    -W

  default-extensions:
    DataKinds
    LambdaCase
    TypeOperators

  if flag(dev)
    ghc-options: -Werror

library
  import: opts
  exposed-modules: FRP.Rhine.Terminal
  hs-source-dirs: src
  default-extensions: TypeOperators

common executable-opts
  build-depends:
    rhine-terminal

  ghc-options:
    -threaded
    -rtsopts
    -with-rtsopts=-N

executable rhine-terminal-simple
  import: opts, executable-opts
  main-is: TerminalSimple.hs
  ghc-options: -threaded

test-suite rhine-terminal-tests
  import: opts, executable-opts
  type: exitcode-stdio-1.0
  main-is: tests/Main.hs
  ghc-options: -threaded
  build-depends:
    exceptions >=0.10.4,
    hspec,
    stm >=2.5.0,
    transformers >=0.5,

flag dev
  description: Enable warnings as errors. Active on ci.
  default: False
  manual: True