fourmolu-0.18.0.0: fourmolu.cabal
cabal-version: 2.4
name: fourmolu
version: 0.18.0.0
license: BSD-3-Clause
license-file: LICENSE.md
maintainer:
Matt Parsons <parsonsmatt@gmail.com>
George Thomas <georgefsthomas@gmail.com>
Brandon Chinn <brandonchinn178@gmail.com>
tested-with:
ghc ==9.8.4
ghc ==9.10.1
ghc ==9.12.1
homepage: https://github.com/fourmolu/fourmolu
bug-reports: https://github.com/fourmolu/fourmolu/issues
synopsis: A formatter for Haskell source code
description: A formatter for Haskell source code.
category: Development, Formatting
build-type: Simple
extra-source-files:
data/**/*.cabal
data/**/*.hs
data/**/*.txt
extract-hackage-info/hackage-info.bin
-- needed for integration tests
fixity-tests/*.hs
region-tests/*.hs
fourmolu.yaml
extra-doc-files:
CHANGELOG.md
README.md
source-repository head
type: git
location: https://github.com/fourmolu/fourmolu.git
flag dev
description: Turn on development settings.
default: False
manual: True
library
exposed-modules:
Ormolu
Ormolu.Config
Ormolu.Diff.ParseResult
Ormolu.Diff.Text
Ormolu.Exception
Ormolu.Fixity
Ormolu.Fixity.Imports
Ormolu.Fixity.Internal
Ormolu.Fixity.Parser
Ormolu.Fixity.Printer
Ormolu.Imports
Ormolu.Parser
Ormolu.Parser.CommentStream
Ormolu.Parser.Pragma
Ormolu.Parser.Result
Ormolu.Printer
Ormolu.Printer.Combinators
Ormolu.Printer.Comments
Ormolu.Printer.Internal
Ormolu.Printer.Meat.Common
Ormolu.Printer.Meat.Declaration
Ormolu.Printer.Meat.Declaration.Annotation
Ormolu.Printer.Meat.Declaration.Class
Ormolu.Printer.Meat.Declaration.Data
Ormolu.Printer.Meat.Declaration.Default
Ormolu.Printer.Meat.Declaration.Foreign
Ormolu.Printer.Meat.Declaration.Instance
Ormolu.Printer.Meat.Declaration.OpTree
Ormolu.Printer.Meat.Declaration.RoleAnnotation
Ormolu.Printer.Meat.Declaration.Rule
Ormolu.Printer.Meat.Declaration.Signature
Ormolu.Printer.Meat.Declaration.Splice
Ormolu.Printer.Meat.Declaration.StringLiteral
Ormolu.Printer.Meat.Declaration.Type
Ormolu.Printer.Meat.Declaration.TypeFamily
Ormolu.Printer.Meat.Declaration.Value
Ormolu.Printer.Meat.Declaration.Warning
Ormolu.Printer.Meat.ImportExport
Ormolu.Printer.Meat.Module
Ormolu.Printer.Meat.Pragma
Ormolu.Printer.Meat.Type
Ormolu.Printer.Operators
Ormolu.Printer.SpanStream
Ormolu.Processing.Common
Ormolu.Processing.Cpp
Ormolu.Processing.Preprocess
Ormolu.Terminal
Ormolu.Terminal.QualifiedDo
Ormolu.Utils
Ormolu.Utils.Cabal
Ormolu.Utils.Fixity
Ormolu.Utils.IO
hs-source-dirs: src
other-modules: GHC.DynFlags
default-language: GHC2021
build-depends:
Cabal-syntax >=3.14 && <3.15,
Diff >=0.4 && <2,
MemoTrie >=0.6 && <0.7,
ansi-terminal >=0.10 && <1.2,
array >=0.5 && <0.6,
base >=4.14 && <5,
binary >=0.8 && <0.9,
bytestring >=0.2 && <0.13,
choice >=0.2.4.1 && <0.3,
containers >=0.5 && <0.8,
directory ^>=1.3,
file-embed >=0.0.15 && <0.1,
filepath >=1.2 && <1.6,
ghc-lib-parser >=9.12 && <9.13,
megaparsec >=9,
mtl >=2 && <3,
syb >=0.7 && <0.8,
text >=2.1 && <3,
-- specific to fourmolu
exposed-modules:
Ormolu.Imports.Grouping
Ormolu.Utils.Glob
Paths_fourmolu
other-modules:
Ormolu.Config.Gen
Ormolu.Config.Types
autogen-modules:
Paths_fourmolu
build-depends:
aeson >=1.0 && <3.0,
scientific >=0.3.2 && <1,
if flag(dev)
ghc-options:
-Wall
-Werror
-Wredundant-constraints
-Wpartial-fields
-Wunused-packages
else
ghc-options:
-O2
-Wall
executable fourmolu
main-is: Main.hs
hs-source-dirs: app
other-modules: Paths_fourmolu
autogen-modules: Paths_fourmolu
default-language: GHC2021
build-depends:
Cabal-syntax >=3.14 && <3.15,
base >=4.12 && <5,
containers >=0.5 && <0.8,
directory ^>=1.3,
filepath >=1.2 && <1.6,
ghc-lib-parser >=9.12 && <9.13,
optparse-applicative >=0.14 && <0.19,
text >=2.1 && <3,
th-env >=0.1.1 && <0.2,
unliftio >=0.2.10 && <0.3,
-- specific to fourmolu
build-depends:
directory >=1.3.3 && <1.4,
fourmolu,
optparse-applicative >=0.17,
terminal-size >=0.1 && <0.4,
yaml >=0.11.6.0 && <1,
-- We use parallelism so we need a threaded runtime to get any
-- benefit.
ghc-options:
-threaded
-rtsopts
-with-rtsopts=-N
if flag(dev)
ghc-options:
-Wall
-Werror
-Wredundant-constraints
-Wpartial-fields
-Wunused-packages
-Wwarn=unused-packages
else
ghc-options:
-O2
-Wall
test-suite tests
type: exitcode-stdio-1.0
main-is: Spec.hs
build-tool-depends: hspec-discover:hspec-discover >=2 && <3
hs-source-dirs: tests
other-modules:
Ormolu.CabalInfoSpec
Ormolu.Diff.TextSpec
Ormolu.Fixity.ParserSpec
Ormolu.Fixity.PrinterSpec
Ormolu.FixitySpec
Ormolu.OpTreeSpec
Ormolu.Parser.OptionsSpec
Ormolu.Parser.ParseFailureSpec
Ormolu.Parser.PragmaSpec
Ormolu.PrinterSpec
default-language: GHC2021
build-depends:
Cabal-syntax >=3.14 && <3.15,
QuickCheck >=2.14,
base >=4.14 && <5,
choice >=0.2.4.1 && <0.3,
containers >=0.5 && <0.8,
directory ^>=1.3,
filepath >=1.2 && <1.6,
ghc-lib-parser >=9.12 && <9.13,
hspec >=2 && <3,
hspec-megaparsec >=2.2,
megaparsec >=9,
path >=0.6 && <0.10,
path-io >=1.4.2 && <2,
temporary ^>=1.3,
text >=2.1 && <3,
-- specific to fourmolu tests
other-modules:
Ormolu.Config.PrinterOptsSpec
Ormolu.ConfigSpec
Ormolu.Integration.CLIOptionsSpec
Ormolu.Integration.CLISpec
Ormolu.Integration.FixitySpec
Ormolu.Integration.RegionSpec
Ormolu.Integration.Utils
Ormolu.Utils.GlobSpec
build-depends:
Diff >=1 && <2,
bytestring,
fourmolu,
pretty >=1.0 && <2.0,
process >=1.6 && <2.0,
yaml,
build-tool-depends: fourmolu:fourmolu
if flag(dev)
ghc-options:
-Wall
-Werror
-Wredundant-constraints
-Wpartial-fields
-Wunused-packages
else
ghc-options:
-O2
-Wall