packages feed

mmark-0.0.7.3: mmark.cabal

cabal-version:   1.18
name:            mmark
version:         0.0.7.3
license:         BSD3
license-file:    LICENSE.md
maintainer:      Mark Karpov <markkarpov92@gmail.com>
author:          Mark Karpov <markkarpov92@gmail.com>
tested-with:     ghc ==8.8.4 ghc ==8.10.4 ghc ==9.0.1
homepage:        https://github.com/mmark-md/mmark
bug-reports:     https://github.com/mmark-md/mmark/issues
synopsis:        Strict markdown processor for writers
description:     Strict markdown processor for writers.
category:        Text
build-type:      Simple
data-files:
    data/*.md
    data/*.html

extra-doc-files:
    CHANGELOG.md
    README.md

source-repository head
    type:     git
    location: https://github.com/mmark-md/mmark.git

flag dev
    description: Turn on development settings.
    default:     False
    manual:      True

library
    exposed-modules:
        Text.MMark
        Text.MMark.Extension

    other-modules:
        Text.MMark.Parser
        Text.MMark.Parser.Internal
        Text.MMark.Parser.Internal.Type
        Text.MMark.Render
        Text.MMark.Trans
        Text.MMark.Type
        Text.MMark.Util

    default-language: Haskell2010
    build-depends:
        aeson >=0.11 && <1.6,
        base >=4.13 && <5.0,
        case-insensitive >=1.2 && <1.3,
        containers >=0.5 && <0.7,
        deepseq >=1.3 && <1.5,
        dlist >=0.8 && <2.0,
        email-validate >=2.2 && <2.4,
        foldl >=1.2 && <1.5,
        hashable >=1.0.1.1 && <1.4,
        html-entity-map >=0.1 && <0.2,
        lucid >=2.6 && <3.0,
        megaparsec >=8.0 && <10.0,
        microlens >=0.4 && <0.5,
        microlens-th >=0.4 && <0.5,
        modern-uri >=0.3.4 && <0.4,
        mtl >=2.0 && <3.0,
        parser-combinators >=0.4 && <2.0,
        text >=0.2 && <1.3,
        text-metrics >=0.3 && <0.4,
        unordered-containers >=0.2.5 && <0.3

    if !impl(ghcjs >=0)
        build-depends: yaml >=0.11.5 && <0.12

    if flag(dev)
        ghc-options: -O0 -Wall -Werror

    else
        ghc-options: -O2 -Wall

    if flag(dev)
        ghc-options:
            -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns
            -Wnoncanonical-monad-instances

    if impl(ghcjs >=0)
        ghcjs-options: +RTS -K1G -RTS -Wall

test-suite tests
    type:             exitcode-stdio-1.0
    main-is:          Spec.hs
    hs-source-dirs:   tests
    other-modules:
        Text.MMarkSpec
        Text.MMark.ExtensionSpec
        Text.MMark.TestUtils

    default-language: Haskell2010
    build-depends:
        QuickCheck >=2.4 && <3.0,
        aeson >=0.11 && <1.6,
        base >=4.13 && <5.0,
        foldl >=1.2 && <1.5,
        hspec >=2.0 && <3.0,
        hspec-megaparsec >=2.0 && <3.0,
        lucid >=2.6 && <3.0,
        megaparsec >=8.0 && <10.0,
        mmark,
        modern-uri >=0.3 && <0.4,
        text >=0.2 && <1.3

    if flag(dev)
        ghc-options: -O0 -Wall -Werror

    else
        ghc-options: -O2 -Wall

    if impl(ghcjs >=0)
        ghcjs-options: -O0 +RTS -K1G -M5G -RTS -Wall -Wwarn=missing-home-modules

benchmark bench-speed
    type:             exitcode-stdio-1.0
    main-is:          Main.hs
    hs-source-dirs:   bench/speed
    default-language: Haskell2010
    build-depends:
        base >=4.13 && <5.0,
        criterion >=0.6.2.1 && <1.6,
        mmark,
        text >=0.2 && <1.3

    if flag(dev)
        ghc-options: -O2 -Wall -Werror

    else
        ghc-options: -O2 -Wall

    if impl(ghcjs >=0)
        ghcjs-options: -O0 +RTS -K1G -M6G -RTS -Wall -Wwarn=missing-home-modules

benchmark bench-memory
    type:             exitcode-stdio-1.0
    main-is:          Main.hs
    hs-source-dirs:   bench/memory
    default-language: Haskell2010
    build-depends:
        base >=4.13 && <5.0,
        mmark,
        text >=0.2 && <1.3,
        weigh >=0.0.4

    if flag(dev)
        ghc-options: -O2 -Wall -Werror

    else
        ghc-options: -O2 -Wall

    if impl(ghcjs >=0)
        ghcjs-options: -O0 +RTS -K1G -M6G -RTS -Wall -Wwarn=missing-home-modules