fourmolu-0.12.0.0: fourmolu.cabal
cabal-version: 2.4
name: fourmolu
version: 0.12.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.2.7 ghc ==9.4.4 ghc ==9.6.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/**/*.hs
data/**/*.txt
data/**/*.cabal
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
flag internal-bundle-fixities
description:
An internal ad-hoc flag that is enabled by default, Ormolu Live disables
it due to missing WASM TH support.
manual: True
library
exposed-modules:
Ormolu
Ormolu.Config
Ormolu.Diff.ParseResult
Ormolu.Diff.Text
Ormolu.Exception
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.RoleAnnotation
Ormolu.Printer.Meat.Declaration.Rule
Ormolu.Printer.Meat.Declaration.Signature
Ormolu.Printer.Meat.Declaration.Splice
Ormolu.Printer.Meat.Declaration.Type
Ormolu.Printer.Meat.Declaration.TypeFamily
Ormolu.Printer.Meat.Declaration.Value
Ormolu.Printer.Meat.Declaration.OpTree
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.Fixity
Ormolu.Fixity.Internal
Ormolu.Fixity.Parser
Ormolu.Fixity.Printer
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
Paths_fourmolu
other-modules:
Ormolu.Config.Gen
hs-source-dirs: src
other-modules: GHC.DynFlags
default-language: GHC2021
build-depends:
Cabal-syntax >=3.10 && <3.11,
Diff >=0.4 && <1.0,
MemoTrie >=0.6 && <0.7,
ansi-terminal >=0.10 && <1.0,
array >=0.5 && <0.6,
base >=4.14 && <5.0,
binary >=0.8 && <0.9,
bytestring >=0.2 && <0.12,
containers >=0.5 && <0.7,
deepseq >=1.4 && <1.5,
directory ^>=1.3,
file-embed >=0.0.15 && <0.1,
filepath >=1.2 && <1.5,
ghc-lib-parser >=9.6 && <9.7,
megaparsec >=9.0,
mtl >=2.0 && <3.0,
syb >=0.7 && <0.8,
text >=2.0 && <3.0,
-- fourmolu-only deps
aeson >=1.0 && <3.0,
scientific >=0.3.2 && <1,
yaml >=0.11.6.0 && <1
if flag(dev)
ghc-options:
-Wall -Werror -Wredundant-constraints -Wpartial-fields
-Wunused-packages
else
ghc-options: -O2 -Wall
if flag(internal-bundle-fixities)
cpp-options: -DBUNDLE_FIXITIES
executable fourmolu
main-is: Main.hs
hs-source-dirs: app
other-modules: Paths_fourmolu
autogen-modules: Paths_fourmolu
default-language: GHC2021
build-depends:
base >=4.12 && <5.0,
containers >=0.5 && <0.7,
directory ^>=1.3,
filepath >=1.2 && <1.5,
ghc-lib-parser >=9.6 && <9.7,
th-env >=0.1.1 && <0.2,
optparse-applicative >=0.14 && <0.18,
text >=2.0 && <3.0,
-- fourmolu-only deps
directory >=1.3.3 && <1.4,
yaml >=0.11.6.0 && <1,
fourmolu
if flag(dev)
ghc-options:
-Wall -Werror -Wredundant-constraints -Wpartial-fields
-Wunused-packages -Wwarn=unused-packages
else
ghc-options: -O2 -Wall -rtsopts
common integration-test-utils
build-tool-depends: fourmolu:fourmolu
hs-source-dirs: tests/utils/
other-modules: IntegrationUtils
build-depends:
directory >=1.3 && <1.4,
process >=1.6 && <2.0
test-suite tests
import: integration-test-utils
type: exitcode-stdio-1.0
main-is: Spec.hs
build-tool-depends: hspec-discover:hspec-discover >=2.0 && <3.0
hs-source-dirs: tests
other-modules:
Ormolu.CabalInfoSpec
Ormolu.Diff.TextSpec
Ormolu.Fixity.ParserSpec
Ormolu.Fixity.PrinterSpec
Ormolu.HackageInfoSpec
Ormolu.OpTreeSpec
Ormolu.Parser.OptionsSpec
Ormolu.Parser.ParseFailureSpec
Ormolu.Parser.PragmaSpec
Ormolu.PrinterSpec
default-language: GHC2021
build-depends:
Cabal-syntax >=3.10 && <3.11,
QuickCheck >=2.14,
base >=4.14 && <5.0,
containers >=0.5 && <0.7,
directory ^>=1.3,
filepath >=1.2 && <1.5,
ghc-lib-parser >=9.6 && <9.7,
hspec >=2.0 && <3.0,
hspec-megaparsec >=2.2,
path >=0.6 && <0.10,
path-io >=1.4.2 && <2.0,
temporary ^>=1.3,
text >=2.0 && <3.0
-- specific to fourmolu tests
other-modules:
Ormolu.Config.OptionsSpec
Ormolu.Config.PrinterOptsSpec
build-depends:
Diff >=0.3 && <0.5,
pretty >=1.0 && <2.0,
fourmolu
if flag(dev)
ghc-options:
-Wall -Werror -Wredundant-constraints -Wpartial-fields
-Wunused-packages
else
ghc-options: -O2 -Wall
test-suite region-tests
import: integration-test-utils
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: region-tests
default-language: Haskell2010
build-depends:
base >=4.14 && <5.0,
hspec >=2.0 && <3.0
if flag(dev)
ghc-options: -Wall -Werror
else
ghc-options: -O2 -Wall
test-suite fixity-tests
import: integration-test-utils
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: fixity-tests
default-language: Haskell2010
build-depends:
base >=4.14 && <5.0,
hspec >=2.0 && <3.0,
temporary >=1.3 && <1.4
if flag(dev)
ghc-options: -Wall -Werror
else
ghc-options: -O2 -Wall