cabal-version:       2.4
name:                jira-wiki-markup
version:             1.5.1
synopsis:            Handle Jira wiki markup
description:         Parse jira wiki text into an abstract syntax tree for easy
                     transformation to other formats.
homepage:            https://github.com/tarleb/jira-wiki-markup
bug-reports:         https://github.com/tarleb/jira-wiki-markup/issues
license:             MIT
license-file:        LICENSE
author:              Albert Krewinkel
maintainer:          tarleb@zeitkraut.de
copyright:           © 2019–2023 Albert Krewinkel
category:            Text
build-type:          Simple
extra-doc-files:     README.md
                   , CHANGELOG.md
tested-with:         GHC == 8.0.2
                   , GHC == 8.2.2
                   , GHC == 8.4.4
                   , GHC == 8.6.5
                   , GHC == 8.8.3
                   , GHC == 8.10.4
                   , GHC == 9.0.2
                   , GHC == 9.2.5
                   , GHC == 9.4.4

source-repository head
  type:                git
  location:            https://github.com/tarleb/jira-wiki-markup.git

common common-options
  build-depends:       base    >= 4.9   && < 5
                     , text    >= 1.1.1 && < 1.3 || >= 2.0 && < 2.1
  default-language:    Haskell2010
  default-extensions:  OverloadedStrings
  ghc-options:         -Wall
                       -Widentities
                       -Wincomplete-record-updates
                       -Wincomplete-uni-patterns
                       -Wmissing-export-lists
                       -Wredundant-constraints
                       -Wunused-type-patterns
  if impl(ghc >= 8.2)
    ghc-options:         -Wmissing-home-modules
  if impl(ghc >= 8.4)
    ghc-options:         -fhide-source-paths
                         -Wpartial-fields
  if impl(ghc >= 8.10)
    ghc-options:         -Wunused-packages

  if impl(ghc >= 9.0)
    ghc-options:         -Winvalid-haddock

library
  import:              common-options
  hs-source-dirs:      src
  exposed-modules:     Text.Jira.Markup
                     , Text.Jira.Parser
                     , Text.Jira.Parser.Block
                     , Text.Jira.Parser.Core
                     , Text.Jira.Parser.Inline
                     , Text.Jira.Parser.PlainText
                     , Text.Jira.Parser.Shared
                     , Text.Jira.Printer

  build-depends:       mtl     >= 2.2   && < 2.4
                     , parsec  >= 3.1   && < 3.2


executable jira-wiki-markup
  import:              common-options
  hs-source-dirs:      app
  main-is:             Main.hs
  build-depends:       jira-wiki-markup
  ghc-options:         -threaded
                       -rtsopts
                       -with-rtsopts=-N

test-suite jira-wiki-markup-test
  import:              common-options
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             jira-wiki-markup-test.hs
  other-modules:       Text.Jira.ParserTests
                     , Text.Jira.Parser.BlockTests
                     , Text.Jira.Parser.InlineTests
                     , Text.Jira.PrinterTests
  build-depends:       jira-wiki-markup
                     , parsec  >= 3.1   && < 3.2
                     , tasty
                     , tasty-hunit
  ghc-options:         -threaded
                       -rtsopts
                       -with-rtsopts=-N
