cabal-version: 1.12
name: headroom
version: 0.1.1.0
license: BSD3
license-file: LICENSE
copyright: Copyright (c) 2019-2020 Vaclav Svejcar
maintainer: vaclav.svejcar@gmail.com
author: Vaclav Svejcar
homepage: https://github.com/vaclavsvejcar/headroom
bug-reports: https://github.com/vaclavsvejcar/headroom/issues
synopsis: License Header Manager
description:
    So you are tired of managing license headers in your codebase by hand? Then Headroom is the right tool for you! Now you can define your license header as Mustache template, put all the variables (such as author's name, year, etc.) into the YAML config file and Headroom will take care to add such license headers to all your source code files.
category: Utils
build-type: Simple
extra-source-files:
    CHANGELOG.md
    LICENSE
    README.md
    embedded/config-file.yaml
    embedded/license/apache2/css.mustache
    embedded/license/apache2/haskell.mustache
    embedded/license/apache2/html.mustache
    embedded/license/apache2/java.mustache
    embedded/license/apache2/js.mustache
    embedded/license/apache2/scala.mustache
    embedded/license/bsd3/css.mustache
    embedded/license/bsd3/haskell.mustache
    embedded/license/bsd3/html.mustache
    embedded/license/bsd3/java.mustache
    embedded/license/bsd3/js.mustache
    embedded/license/bsd3/scala.mustache
    embedded/license/gpl2/css.mustache
    embedded/license/gpl2/haskell.mustache
    embedded/license/gpl2/html.mustache
    embedded/license/gpl2/java.mustache
    embedded/license/gpl2/js.mustache
    embedded/license/gpl2/scala.mustache
    embedded/license/gpl3/css.mustache
    embedded/license/gpl3/haskell.mustache
    embedded/license/gpl3/html.mustache
    embedded/license/gpl3/java.mustache
    embedded/license/gpl3/js.mustache
    embedded/license/gpl3/scala.mustache
    embedded/license/mit/css.mustache
    embedded/license/mit/haskell.mustache
    embedded/license/mit/html.mustache
    embedded/license/mit/java.mustache
    embedded/license/mit/js.mustache
    embedded/license/mit/scala.mustache

source-repository head
    type: git
    location: https://github.com/vaclavsvejcar/headroom

library
    exposed-modules:
        Headroom.AppConfig
        Headroom.Command
        Headroom.Command.Gen
        Headroom.Command.Gen.Env
        Headroom.Command.Run
        Headroom.Command.Run.Env
        Headroom.Command.Shared
        Headroom.Embedded
        Headroom.FileSystem
        Headroom.FileType
        Headroom.Header
        Headroom.Header.Impl
        Headroom.Header.Impl.CSS
        Headroom.Header.Impl.Haskell
        Headroom.Header.Impl.HTML
        Headroom.Header.Impl.Java
        Headroom.Header.Impl.JS
        Headroom.Header.Impl.Scala
        Headroom.Header.Utils
        Headroom.License
        Headroom.Meta
        Headroom.Template
        Headroom.Template.Mustache
        Headroom.Text
        Headroom.Types
        Headroom.Types.Utils
    hs-source-dirs: src
    other-modules:
        Paths_headroom
    default-language: Haskell2010
    ghc-options: -optP-Wno-nonportable-include-path -Wall -Wcompat
                 -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns
                 -Wpartial-fields -Wredundant-constraints
                 -Werror=incomplete-patterns
    build-depends:
        aeson >=1.4.6.0 && <1.5,
        base >=4.7 && <5,
        either >=5.0.1.1 && <5.1,
        file-embed >=0.0.11.1 && <0.1,
        lens >=4.18.1 && <4.19,
        mustache >=2.3.1 && <2.4,
        optparse-applicative >=0.15.1.0 && <0.16,
        pcre-heavy >=1.0.0.2 && <1.1,
        pcre-light >=0.4.1.0 && <0.5,
        rio >=0.1.14.0 && <0.2,
        template-haskell >=2.15.0.0 && <2.16,
        text >=1.2.4.0 && <1.3,
        time >=1.9.3 && <1.10,
        validation ==1.1.*,
        yaml >=0.11.2.0 && <0.12

executable headroom
    main-is: Main.hs
    hs-source-dirs: app
    other-modules:
        Paths_headroom
    default-language: Haskell2010
    ghc-options: -optP-Wno-nonportable-include-path -Wall -Wcompat
                 -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns
                 -Wpartial-fields -Wredundant-constraints
                 -Werror=incomplete-patterns -threaded -rtsopts -with-rtsopts=-N
    build-depends:
        base >=4.7 && <5,
        headroom -any,
        optparse-applicative >=0.15.1.0 && <0.16,
        rio >=0.1.14.0 && <0.2

test-suite doctest
    type: exitcode-stdio-1.0
    main-is: Main.hs
    hs-source-dirs: doctest
    other-modules:
        Paths_headroom
    default-language: Haskell2010
    ghc-options: -optP-Wno-nonportable-include-path -Wall -Wcompat
                 -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns
                 -Wpartial-fields -Wredundant-constraints
                 -Werror=incomplete-patterns
    build-depends:
        base >=4.7 && <5,
        doctest >=0.16.2 && <0.17,
        optparse-applicative >=0.15.1.0 && <0.16,
        rio >=0.1.14.0 && <0.2

test-suite spec
    type: exitcode-stdio-1.0
    main-is: Spec.hs
    hs-source-dirs: test
    other-modules:
        Headroom.AppConfigSpec
        Headroom.FileSystemSpec
        Headroom.FileTypeSpec
        Headroom.Header.Impl.CSSSpec
        Headroom.Header.Impl.HaskellSpec
        Headroom.Header.Impl.HTMLSpec
        Headroom.Header.Impl.JavaSpec
        Headroom.Header.Impl.JSSpec
        Headroom.Header.Impl.ScalaSpec
        Headroom.Header.UtilsSpec
        Headroom.HeaderSpec
        Headroom.LicenseSpec
        Headroom.Template.MustacheSpec
        Headroom.TextSpec
        Headroom.Types.UtilsSpec
        Headroom.TypesSpec
        Test.Utils
        Paths_headroom
    default-language: Haskell2010
    ghc-options: -optP-Wno-nonportable-include-path -Wall -Wcompat
                 -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns
                 -Wpartial-fields -Wredundant-constraints
                 -Werror=incomplete-patterns
    build-depends:
        aeson >=1.4.6.0 && <1.5,
        base >=4.7 && <5,
        headroom -any,
        hspec >=2.7.1 && <2.8,
        optparse-applicative >=0.15.1.0 && <0.16,
        rio >=0.1.14.0 && <0.2