File turtle.cabal of Package ghc-turtle
Name: turtle
Version: 1.6.2
x-revision: 2
Cabal-Version: >=1.10
Build-Type: Simple
License: BSD3
License-File: LICENSE
Copyright: 2015 Gabriella Gonzalez
Author: Gabriella Gonzalez
Maintainer: GenuineGabriella@gmail.com
Bug-Reports: https://github.com/Gabriella439/turtle/issues
Synopsis: Shell programming, Haskell-style
Description: @turtle@ is a reimplementation of the Unix command line environment
in Haskell so that you can use Haskell as both a shell and a scripting
language.
.
Features include:
.
* Batteries included: Command an extended suite of predefined utilities
.
* Interoperability: You can still run external shell commands
.
* Portability: Works on Windows, OS X, and Linux
.
* Exception safety: Safely acquire and release resources
.
* Streaming: Transform or fold command output in constant space
.
* Patterns: Use typed regular expressions that can parse structured values
.
* Formatting: Type-safe @printf@-style text formatting
.
* Modern: Supports @text@
.
Read "Turtle.Tutorial" for a detailed tutorial or "Turtle.Prelude" for a
quick-start guide
.
@turtle@ is designed to be beginner-friendly, but as a result lacks certain
features, like tracing commands. If you feel comfortable using @turtle@
then you should also check out the @Shelly@ library which provides similar
functionality.
Category: System
Tested-With:
GHC == 9.6.1
GHC == 9.4.4
GHC == 9.2.7
GHC == 9.0.2
GHC == 8.10.7
GHC == 8.8.4
GHC == 8.6.5
GHC == 8.4.4
GHC == 8.2.2
GHC == 8.0.2
Extra-Source-Files:
CHANGELOG.md
Source-Repository head
Type: git
Location: https://github.com/Gabriella439/turtle
Flag new-deps
Description: Use new versions of ansi-wl-pprint and optparse-applicative
Manual: False
Default: True
Library
HS-Source-Dirs: src
Build-Depends:
-- 2021-09-07: Turtle.Prelude uses GHC-8.0 features, so base >= 4.9
base >= 4.9 && < 5 ,
async >= 2.0.0.0 && < 2.3 ,
bytestring >= 0.9.1.8 && < 0.13,
clock >= 0.4.1.2 && < 0.9 ,
containers >= 0.5.0.0 && < 0.8 ,
directory >= 1.3.1.0 && < 1.4 ,
exceptions >= 0.4 && < 0.11,
filepath >= 1.4.1.2 && < 1.5 ,
foldl >= 1.1 && < 1.5 ,
hostname < 1.1 ,
managed >= 1.0.3 && < 1.1 ,
process >= 1.0.1.1 && < 1.7 ,
stm < 2.6 ,
streaming-commons < 0.3 ,
temporary < 1.4 ,
text >= 1.0.0 && < 2.2 ,
time < 1.13,
transformers >= 0.2.0.0 && < 0.7 ,
optional-args >= 1.0 && < 2.0 ,
unix-compat >= 0.4 && < 0.8
if os(windows)
Build-Depends: Win32 >= 2.12
else
Build-Depends: unix >= 2.5.1.0 && < 2.9
-- A possible Cabal issue makes it try an old version of ansi-wl-pprint
-- even though a newer would work.
-- See discussion in https://github.com/Gabriella439/turtle/pull/446
if flag(new-deps)
Build-Depends: ansi-wl-pprint >= 1.0 && < 1.1 ,
optparse-applicative >= 0.18 && < 0.19
else
Build-Depends: ansi-wl-pprint >= 0.6 && < 1.0 ,
optparse-applicative >= 0.16 && < 0.18
Exposed-Modules:
Turtle,
Turtle.Bytes,
Turtle.Format,
Turtle.Pattern,
Turtle.Shell,
Turtle.Options,
Turtle.Line,
Turtle.Prelude,
Turtle.Tutorial
Other-Modules:
Turtle.Internal
GHC-Options: -Wall
Default-Language: Haskell2010
test-suite tests
Type: exitcode-stdio-1.0
HS-Source-Dirs: test
Main-Is: Main.hs
GHC-Options: -Wall
Default-Language: Haskell2010
Build-Depends:
base >= 4 && < 5 ,
doctest >= 0.7
test-suite regression-broken-pipe
Type: exitcode-stdio-1.0
HS-Source-Dirs: test
Main-Is: RegressionBrokenPipe.hs
GHC-Options: -Wall -threaded
Default-Language: Haskell2010
Build-Depends:
base >= 4 && < 5,
turtle
test-suite regression-masking-exception
Type: exitcode-stdio-1.0
HS-Source-Dirs: test
Main-Is: RegressionMaskingException.hs
GHC-Options: -Wall -threaded
Default-Language: Haskell2010
Build-Depends:
base >= 4 && < 5,
turtle
test-suite cptree
Type: exitcode-stdio-1.0
HS-Source-Dirs: test
Main-Is: cptree.hs
GHC-Options: -Wall -threaded
Default-Language: Haskell2010
Build-Depends:
base >= 4 && < 5,
temporary,
filepath >= 0.4,
turtle
test-suite system-filepath-tests
Type: exitcode-stdio-1.0
HS-Source-Dirs: test
Main-Is: system-filepath.hs
GHC-Options: -Wall -threaded
Default-Language: Haskell2010
Build-Depends:
base,
filepath,
tasty >=1.4 && <1.6,
tasty-hunit >=0.10 && <0.11,
turtle
benchmark bench
Type: exitcode-stdio-1.0
HS-Source-Dirs: bench
Main-Is: Main.hs
GHC-Options: -O2 -Wall -threaded
Default-Language: Haskell2010
Build-Depends:
base >= 4 && < 5 ,
tasty-bench >= 0.3.1 ,
text < 2.1,
turtle