tilia-0.0.1.0: tilia.cabal
cabal-version: 2.4
name: tilia
version: 0.0.1.0
license: BSD-3-Clause
license-file: LICENSE.md
maintainer: Mark Karpov <markkarpov92@gmail.com>
tested-with:
ghc ==9.10.3
ghc ==9.12.4
ghc ==9.14.1
homepage: https://github.com/mrkkrp/tilia
bug-reports: https://github.com/mrkkrp/tilia/issues
synopsis: A formatter for Haskell source code
description: A formatter for Haskell source code.
category: Development, Formatting
build-type: Simple
extra-source-files:
corpora/hackage/hackage.manifest
corpora/hackage/hackage.report
corpora/vendored/**/*.hs
extra-doc-files:
CHANGELOG.md
README.md
source-repository head
type: git
location: https://github.com/mrkkrp/tilia.git
flag dev
description: Turn on development settings.
default: False
manual: True
library
exposed-modules:
Tilia.Comments
Tilia.Comments.Attach
Tilia.Comments.Place
Tilia.Cpp
Tilia.Cpp.Macros
Tilia.Diff
Tilia.Doc
Tilia.Doc.Body
Tilia.Doc.Combinators
Tilia.Doc.Internal
Tilia.Equivalence
Tilia.Fixity
Tilia.Fixity.Builtin
Tilia.Fixity.ByHand
Tilia.Fixity.Cabal
Tilia.Fixity.Cache
Tilia.Fixity.Debug
Tilia.Fixity.Interface
Tilia.Fixity.PackageDb
Tilia.Fixity.Plan
Tilia.Format
Tilia.Imports
Tilia.Newline
Tilia.Package
Tilia.Palette
Tilia.Parser
Tilia.Pragma
Tilia.Process
Tilia.Project
Tilia.Render
Tilia.Render.Body
Tilia.Render.Class
Tilia.Render.Context
Tilia.Render.Data
Tilia.Render.Declaration
Tilia.Render.Expression
Tilia.Render.Haddock
Tilia.Render.Header
Tilia.Render.Layout
Tilia.Render.Literal
Tilia.Render.Name
Tilia.Render.Operator
Tilia.Render.Pattern
Tilia.Render.Pragma
Tilia.Render.Signature
Tilia.Render.Type
Tilia.Run
Tilia.Source
Tilia.Source.Lines
Tilia.Span
Tilia.Span.Ghc
Tilia.Target
Tilia.Utils
hs-source-dirs: src
default-language: GHC2021
build-depends:
Cabal-syntax >=3.12 && <3.17,
Diff >=0.4 && <2,
aeson >=2.1 && <3,
base >=4.14 && <5,
base16-bytestring >=1 && <2,
bytestring >=0.11 && <0.13,
choice >=0.2 && <0.3,
containers >=0.5 && <0.9,
cryptohash-sha256 >=0.11 && <0.12,
directory ^>=1.3,
filepath >=1.4 && <1.6,
ghc-lib-parser >=9.14 && <9.15,
process >=1.6 && <1.7,
syb >=0.7 && <0.8,
tar >=0.6 && <0.7,
text >=2.1 && <3,
transformers >=0.5 && <0.7,
zlib >=0.6 && <0.8,
if flag(dev)
ghc-options:
-O2
-Wall
-Werror
-Wredundant-constraints
-Wpartial-fields
-Wunused-packages
-haddock
-Winvalid-haddock
else
ghc-options:
-O2
-Wall
executable tilia
main-is: Main.hs
hs-source-dirs: app
other-modules: Paths_tilia
autogen-modules: Paths_tilia
default-language: GHC2021
build-depends:
base >=4.14 && <5,
choice >=0.2 && <0.3,
directory ^>=1.3,
optparse-applicative >=0.14 && <0.20,
text >=2.1 && <3,
tilia,
-- Twelve capabilities rather than -N, because formatting a project stops
-- getting faster well before a machine runs out of cores and every
-- capability past that point costs about 40 MiB and 0.15s of CPU while
-- formatting nothing. Over this project's 43 files: 1.88s at -N1, 575ms
-- at -N8, 518ms at -N12, 499ms at -N16, and back to 509ms at -N24. Asking
-- for -N here instead is the same wall time as -N12 give or take noise,
-- for 50% more CPU and 940 MiB against 520 MiB. Twelve is no worse on a
-- smaller machine either: pinned to four cores it lands within 3% of -N4.
--
-- The nursery is the flag that pays for itself. At the default size the
-- same run takes 828ms rather than 522ms, which is what the extra 320 MiB
-- buys.
ghc-options:
-threaded
-rtsopts
"-with-rtsopts=-N12 -A32m"
if flag(dev)
ghc-options:
-O2
-Wall
-Werror
-Wredundant-constraints
-Wpartial-fields
-Wunused-packages
-haddock
-Winvalid-haddock
else
ghc-options:
-O2
-Wall
test-suite tests
type: exitcode-stdio-1.0
main-is: Main.hs
build-tool-depends: hspec-discover:hspec-discover >=2 && <3
hs-source-dirs: tests
other-modules:
Spec
Tilia.Comments.PlaceSpec
Tilia.CommentsSpec
Tilia.Corpus
Tilia.Corpus.Manifest
Tilia.CorpusSpec
Tilia.Cpp.MacrosSpec
Tilia.Cpp.PropertiesSpec
Tilia.CppSpec
Tilia.Doc.BodySpec
Tilia.Doc.CombinatorsSpec
Tilia.Doc.InternalSpec
Tilia.Doc.PropertiesSpec
Tilia.EquivalenceSpec
Tilia.Fixity.CabalSpec
Tilia.Fixity.CacheSpec
Tilia.Fixity.DebugSpec
Tilia.Fixity.DependenciesSpec
Tilia.Fixity.InterfaceSpec
Tilia.Fixity.PackageDbSpec
Tilia.Fixity.PlanSpec
Tilia.FixitySpec
Tilia.Gen
Tilia.NewlineSpec
Tilia.PackageSpec
Tilia.PragmaSpec
Tilia.ProcessSpec
Tilia.ProjectSpec
Tilia.Render.OperatorSpec
Tilia.RenderSpec
Tilia.RunSpec
Tilia.TargetSpec
Tilia.TestConfig
default-language: GHC2021
build-depends:
QuickCheck >=2.14 && <3,
base >=4.14 && <5,
base16-bytestring >=1 && <2,
bytestring >=0.11 && <0.13,
choice >=0.2 && <0.3,
containers >=0.5 && <0.9,
cryptohash-sha256 >=0.11 && <0.12,
directory ^>=1.3,
filepath >=1.4 && <1.6,
ghc-lib-parser >=9.14 && <9.15,
hspec >=2 && <3,
http-client >=0.7 && <0.8,
req >=3.13 && <4,
tar >=0.6 && <0.7,
temporary ^>=1.3,
text >=2.1 && <3,
tilia,
zlib >=0.6 && <0.8,
ghc-options:
-threaded
-rtsopts
"-with-rtsopts=-M8G -N"
if flag(dev)
ghc-options:
-O2
-Wall
-Werror
-Wredundant-constraints
-Wpartial-fields
-Wunused-packages
-haddock
-Winvalid-haddock
else
ghc-options:
-O2
-Wall