packages feed

stan-0.1.0.0: stan.cabal

cabal-version:       2.4
name:                stan
version:             0.1.0.0
synopsis:            Haskell STatic ANalyser
description:
    Stan is a Haskell __ST__atic __AN__alysis CLI tool.
    See [README.md](https://github.com/kowainik/stan#stan) for more details.
homepage:            https://github.com/kowainik/stan
bug-reports:         https://github.com/kowainik/stan/issues
license:             MPL-2.0
license-file:        LICENSE
author:              Veronika Romashkina, Dmitrii Kovanikov
maintainer:          Kowainik <xrom.xkov@gmail.com>
copyright:           2020 Kowainik
category:            Static Analysis
build-type:          Simple
stability:           experimental
extra-doc-files:     README.md
                     CHANGELOG.md
extra-source-files:  test/.stan-example.toml
tested-with:         GHC == 8.8.4
                     GHC == 8.10.7

source-repository head
  type:                git
  location:            https://github.com/kowainik/stan.git

common common-options
  build-depends:       base >= 4.13 && < 4.19 && (< 4.16.3.0 || >= 4.17)
                       -- ^^ .hie files don't contain enough type
                       -- information on ghc-9.2.[4-8] (base >=
                       -- 4.16.3.0 && < 4.17)

  ghc-options:         -Wall
                       -Wcompat
                       -Widentities
                       -Wincomplete-uni-patterns
                       -Wincomplete-record-updates
                       -Wredundant-constraints
                       -fhide-source-paths
                       -Wmissing-export-lists
                       -Wpartial-fields
                       -Wmissing-deriving-strategies
                       -Werror=missing-deriving-strategies
                       -fwrite-ide-info
                       -hiedir=.hie
  if impl(ghc >= 8.10)
    ghc-options:       -Wunused-packages

  default-language:    Haskell2010
  default-extensions:  ConstraintKinds
                       DeriveGeneric
                       DerivingStrategies
                       GeneralizedNewtypeDeriving
                       InstanceSigs
                       KindSignatures
                       LambdaCase
                       OverloadedStrings
                       RecordWildCards
                       ScopedTypeVariables
                       StandaloneDeriving
                       TupleSections
                       TypeApplications
                       ViewPatterns

common common-relude
  build-depends:       relude >= 1.0 && < 1.3
  mixins:              base hiding (Prelude)
                     , relude (Relude as Prelude)
                     , relude

library
  import:              common-options
                     , common-relude
  hs-source-dirs:      src
  exposed-modules:     Stan
                         Stan.Analysis
                           Stan.Analysis.Analyser
                           Stan.Analysis.Pretty
                           Stan.Analysis.Summary
                           Stan.Analysis.Visitor
                         Stan.Browse
                         Stan.Cabal
                         Stan.Category
                         Stan.Cli
                         Stan.Config
                           Stan.Config.Pretty
                         Stan.Core.Id
                         Stan.Core.List
                         Stan.Core.ModuleName
                         Stan.Example
                         Stan.Ghc.Compat
                         Stan.EnvVars
                         Stan.FileInfo
                         Stan.Hie
                           Stan.Hie.Compat
                           Stan.Hie.Debug
                           Stan.Hie.MatchAst
                           Stan.Hie.MatchType
                         Stan.Info
                         Stan.Inspection
                           Stan.Inspection.All
                           Stan.Inspection.AntiPattern
                           Stan.Inspection.Infinite
                           Stan.Inspection.Partial
                           Stan.Inspection.Style
                         Stan.NameMeta
                         Stan.Observation
                           Stan.Pattern.Ast
                           Stan.Pattern.Edsl
                           Stan.Pattern.Type
                         Stan.Report
                           Stan.Report.Css
                           Stan.Report.Html
                           Stan.Report.Settings
                         Stan.Severity
                         Stan.Toml

  autogen-modules:     Paths_stan
  other-modules:       Paths_stan
                       Stan.Ghc.Compat810
                       Stan.Ghc.Compat900
                       Stan.Ghc.Compat902
                       Stan.Hie.Compat810
                       Stan.Hie.Compat900
                       Stan.Hie.Compat902
                       Stan.Hie.Compat904
                       Stan.Hie.Debug810
                       Stan.Hie.Debug900
                       Stan.Hie.Debug902

  build-depends:       array ^>= 0.5
                     , base64 ^>= 0.4.1
                     , blaze-html ^>= 0.9.1
                     , bytestring >= 0.10 && < 0.12
                     , clay ^>= 0.14
                     , colourista >= 0.1 && < 0.3
                     , cryptohash-sha1 ^>= 0.11
                     , dir-traverse ^>= 0.2.2.2
                     , directory ^>= 1.3
                     , extensions ^>= 0.0.0.1 || ^>= 0.1.0.0
                     , filepath ^>= 1.4
                     , ghc >= 8.8 && < 9.5
                     , ghc-boot-th >= 8.8 && < 9.5
                     , gitrev ^>= 1.3.1
                     , microaeson ^>= 0.1.0.0
                     , optparse-applicative >= 0.15 && < 0.17
                     , pretty-simple ^>= 4.0
                     , process ^>= 1.6.8.0
                     , slist >= 0.1 && < 0.3
                     , tomland ^>= 1.3.0.0
                     , trial ^>= 0.0.0.0
                     , trial-optparse-applicative ^>= 0.0.0.0
                     , trial-tomland ^>= 0.0.0.0

executable stan
  import:              common-options
  hs-source-dirs:      app
  main-is:             Main.hs
  build-depends:       stan

library target
  import:              common-options
  hs-source-dirs:      target
  build-depends:       bytestring
                     , filepath
                     , text
                     , unordered-containers
  exposed-modules:     Target.AntiPattern
                         Target.AntiPattern.Stan0206
                         Target.AntiPattern.Stan0206Extensions
                         Target.AntiPattern.Stan0212
                         Target.AntiPattern.Stan0213
                         Target.AntiPattern.Stan0214
                       Target.Infinite
                       Target.Partial
                       Target.Style

test-suite stan-test
  import:              common-options
                     , common-relude
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  other-modules:       Test.Stan.Analysis
                         Test.Stan.Analysis.AntiPattern
                         Test.Stan.Analysis.Common
                         Test.Stan.Analysis.Infinite
                         Test.Stan.Analysis.Partial
                         Test.Stan.Analysis.Style
                       Test.Stan.Cli
                       Test.Stan.Config
                       Test.Stan.Gen
                       Test.Stan.Number
                       Test.Stan.Observation
                       Test.Stan.Toml

  build-depends:       stan
                     , containers
                     , filepath ^>= 1.4
                     , ghc
                     , hedgehog >= 1.0 && < 1.2
                     , hspec >= 2.7 && < 2.11
                     , hspec-hedgehog >= 0.0.1.2
                     , optparse-applicative
                     , text
                     , tomland
                     , trial
                     , unordered-containers

  ghc-options:         -threaded
                       -rtsopts
                       -with-rtsopts=-N