packages feed

web-rep-0.14.0.0: web-rep.cabal

cabal-version: 3.0
name: web-rep
version: 0.14.0.0
license: BSD-3-Clause
license-file: LICENSE
copyright: Tony Day (c) 2015
category: web
author: Tony Day
maintainer: Tony Day <tonyday567@gmail.com>
homepage: https://github.com/tonyday567/numhask#readme
bug-reports: https://github.com/tonyday567/web-page/issues
synopsis: representations of a web page
description:
  An applicative-based, shared-data representation of a web page.

build-type: Simple
tested-with:
  ghc ==9.6.7
  ghc ==9.8.4
  ghc ==9.10.2
  ghc ==9.12.2

extra-doc-files:
  ChangeLog.md
  readme.md

source-repository head
  type: git
  location: https://github.com/tonyday567/web-rep

common ghc-options-exe-stanza
  ghc-options:
    -fforce-recomp
    -funbox-strict-fields
    -rtsopts
    -threaded
    -with-rtsopts=-N

common ghc-options-stanza
  ghc-options:
    -Wall
    -Wcompat
    -Widentities
    -Wincomplete-record-updates
    -Wincomplete-uni-patterns
    -Wpartial-fields
    -Wredundant-constraints

common ghc2024-additions
  default-extensions:
    DataKinds
    DerivingStrategies
    DisambiguateRecordFields
    ExplicitNamespaces
    GADTs
    LambdaCase
    MonoLocalBinds
    RoleAnnotations

common ghc2024-stanza
  if impl(ghc >=9.10)
    default-language:
      GHC2024
  else
    import: ghc2024-additions
    default-language:
      GHC2021

library
  import: ghc-options-stanza
  import: ghc2024-stanza
  hs-source-dirs: src
  build-depends:
    async >=2.2.4 && <2.3,
    base >=4.14 && <5,
    bifunctors >=5.5.11 && <5.7,
    box >=0.9 && <0.10,
    box-socket >=0.5 && <0.6,
    bytestring >=0.11.3 && <0.13,
    flatparse >=0.3.5 && <0.6,
    markup-parse >=0.2 && <0.3,
    mtl >=2.2.2 && <2.4,
    optics-core >=0.4 && <0.5,
    optics-extra >=0.4 && <0.5,
    profunctors >=5.6.2 && <5.7,
    scotty >=0.11.5 && <0.23,
    string-interpolate >=0.3 && <0.4,
    text >=1.2 && <2.2,
    transformers >=0.5.6 && <0.6.2,
    unordered-containers >=0.2 && <0.3,
    wai-middleware-static >=0.9 && <0.10,
    wai-websockets >=3.0.1.2 && <3.1,
    websockets >=0.12 && <0.14,

  exposed-modules:
    Web.Rep
    Web.Rep.Bootstrap
    Web.Rep.Examples
    Web.Rep.Html
    Web.Rep.Html.Input
    Web.Rep.Internal.FlatParse
    Web.Rep.Page
    Web.Rep.Render
    Web.Rep.Server
    Web.Rep.Shared
    Web.Rep.SharedReps
    Web.Rep.Socket

executable web-rep-example
  import: ghc-options-exe-stanza
  import: ghc-options-stanza
  import: ghc2024-stanza
  main-is: rep-example.hs
  hs-source-dirs: app
  build-depends:
    base >=4.14 && <5,
    box >=0.9 && <0.10,
    markup-parse >=0.2 && <0.3,
    optics-core >=0.4 && <0.5,
    optparse-applicative >=0.17 && <0.20,
    web-rep,

test-suite doctests
  import: ghc2024-stanza
  main-is: doctests.hs
  hs-source-dirs: test
  build-depends:
    base >=4.14 && <5,
    doctest-parallel >=0.3 && <0.5,

  ghc-options: -threaded
  type: exitcode-stdio-1.0