packages feed

templatise-0.1.4.0: templatise.cabal

cabal-version:      3.0
name:               templatise
version:            0.1.4.0
license:            Unlicense
license-file:       LICENSE
copyright:          (c) 2023 Alex Brandt
author:             Alex Brandt
maintainer:         alunduil@gmail.com
stability:          alpha
homepage:           https://github.com/alunduil/template.hs
bug-reports:        https://github.com/alunduil/template.hs/issues
synopsis:
  You can use template.hs to create a new Haskell GitHub repository.

description:
  You can use template.hs to create a new GitHub repository. The repository will
  have Haskell, VS Code devcontainers, and various GitHub actions ready to use.

category:           VSCode
tested-with:
  GHC >=9.4 && <9.5 || >=9.6 && <9.7 || >=9.8 && <9.9 || >=9.10 && <9.11

extra-source-files:
  .devcontainer/devcontainer.json
  .github/workflows/*.yml
  CHANGELOG.md
  README.md

data-files:
  test/**/*.cabal
  test/**/*.json
  test/**/*.md
  test/**/*.yml

source-repository head
  type:     git
  location: https://github.com/alunduil/template.hs

common initialise-common
  build-depends:
    , base                  ^>=4.16.3.0 || ^>=4.17     || ^>=4.18     || ^>=4.19 || ^>=4.20
    , bytestring            ^>=0.11.3.1 || ^>=0.12.0.2
    , Cabal-syntax          ^>=3.8.1.0  || ^>=3.10.1.0 || ^>=3.12.0.0
    , filepath              >=1.4.2.2   && <1.6
    , monad-logger          ^>=0.3.40
    , mtl                   ^>=2.2.2    || ^>=2.3.1
    , network-uri           ^>=2.6.4.1  || ^>=2.7.0.0
    , optparse-applicative  ^>=0.18.1.0
    , process               ^>=1.6.13.2
    , regex-tdfa            ^>=1.3.2.2
    , text                  ^>=1.2.5.0  || ^>=2.0.1    || ^>=2.1
    , time                  ^>=1.11.1.1 || ^>=1.12.2   || ^>=1.13     || ^>=1.14

  ghc-options:
    -Wall -Werror=missing-fields -Werror=unused-imports
    -Werror=unused-matches -Werror=unused-top-binds

library initialise-library
  import:           initialise-common
  exposed-modules:
    Cabal
    Configuration
    Defaults
    File
    Git
    Initialiser
    Licence

  -- TODO Make Git private.
  other-modules:
    Initialiser.Initialisers
    Initialiser.Types

  build-depends:
    , exceptions    ^>=0.10.4
    , extra         ^>=1.7.14
    , http-client   ^>=0.7.14
    , http-conduit  ^>=2.3.8.3
    , parsec        ^>=3.1.15.0

  hs-source-dirs:   lib/initialise

  --default-extensions:
  --other-extensions:
  default-language: Haskell2010

--build-tool-depends:
--ghc-options:      -Wall

test-suite initialise-test
  import:           initialise-common
  type:             exitcode-stdio-1.0
  main-is:          Main.hs
  build-depends:
    , directory           ^>=1.3.6.2
    , hspec               ^>=2.11.4
    , initialise-library
    , MissingH            ^>=1.6.0.1
    , tasty               ^>=1.4.3   || ^>=1.5
    , tasty-golden        ^>=2.3.5
    , tasty-hspec         ^>=1.2.0.4
    , temporary           ^>=1.3

  other-modules:
    CabalGolden
    ConfigurationSpec
    DefaultsSpec
    FileGolden
    GitSpec
    Hooks
    InitialiseSpec

  hs-source-dirs:   test/initialise

  --default-extensions:
  -- other-extensions:
  default-language: Haskell2010

  -- build-tool-depends:
  ghc-options:      -threaded -Wall

executable initialise
  main-is:          Main.hs
  build-depends:
    , base                  ^>=4.16.3.0 || ^>=4.17.0.0 || ^>=4.18.0.0 || ^>=4.19.0.0
    , filepath              ^>=1.4.2.2  || ^>=1.5.0
    , initialise-library
    , optparse-applicative  ^>=0.18.1.0

  hs-source-dirs:   bin/initialise

  -- default-extensions:
  -- other-extensions:
  default-language: Haskell2010

  -- build-tool-depends:
  ghc-options:      -threaded -Wall