name:                path
version:             0.7.0
synopsis:            Support for well-typed paths
description:         Support for well-typed paths.
license:             BSD3
license-file:        LICENSE
author:              Chris Done <chrisdone@fpcomplete.com>
maintainer:          Chris Done <chrisdone@fpcomplete.com>
copyright:           2015–2018 FP Complete
category:            System, Filesystem
build-type:          Simple
cabal-version:       1.18
tested-with:         GHC==8.2.2, GHC==8.4.4, GHC==8.6.5
extra-source-files:  README.md
                   , CHANGELOG
                   , src/Path/Include.hs

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

library
  hs-source-dirs:    src
  exposed-modules:   Path
                   , Path.Internal
                   , Path.Posix
                   , Path.Windows
  build-depends:     aeson
                   , base       >= 4.10     && < 5
                   , deepseq
                   , exceptions >= 0.4     && < 0.11
                   , filepath   < 1.2.0.1  || >= 1.3
                   , hashable   >= 1.2     && < 1.3
                   , text
                   , template-haskell
  if flag(dev)
    ghc-options:      -Wall -Werror
  else
    ghc-options:      -O2 -Wall
  if flag(dev)
    ghc-options:      -Wcompat
                      -Wincomplete-record-updates
                      -Wincomplete-uni-patterns
                      -Wnoncanonical-monad-instances
                      -Wnoncanonical-monadfail-instances
  default-language:  Haskell2010

test-suite test
  type:              exitcode-stdio-1.0
  main-is:           Main.hs
  other-modules:     Posix
                   , Windows
                   , Common
  hs-source-dirs:    test
  build-depends:     aeson
                   , base       >= 4.10     && < 5
                   , bytestring
                   , filepath   < 1.2.0.1  || >= 1.3
                   , hspec      >= 2.0     && < 3
                   , mtl        >= 2.0     && < 3
                   , path
  if flag(dev)
    ghc-options:      -Wall -Werror
  else
    ghc-options:      -O2 -Wall
  default-language:  Haskell2010

test-suite validity-test
  type:              exitcode-stdio-1.0
  main-is:           ValidityTest.hs
  other-modules:     Path.Gen
  hs-source-dirs:    test
  build-depends:     QuickCheck
                   , aeson
                   , base       >= 4.10 && < 5
                   , bytestring
                   , filepath   < 1.2.0.1  || >= 1.3
                   , genvalidity >= 0.8
                   , genvalidity-property >= 0.4
                   , genvalidity-hspec >= 0.7
                   , hspec      >= 2.0     && < 3
                   , mtl        >= 2.0     && < 3
                   , path
                   , validity   >= 0.8.0.0
  default-language:  Haskell2010
  ghc-options: -threaded -rtsopts -with-rtsopts=-N

source-repository head
  type:              git
  location:          https://github.com/commercialhaskell/path.git
