packages feed

splint-2.0.0.4: splint.cabal

cabal-version: 2.2
name: splint
version: 2.0.0.4
synopsis: HLint as a GHC source plugin.
description:
  Splint makes HLint available as a GHC source plugin. To use it, pass
  @-fplugin=Splint@ to GHC. Any options passed to Splint are passed through to
  HLint. For example you can use @-fplugin-opt=Splint:'--ignore=Use concatMap'@
  to ignore the "Use @concatMap@" suggestion.

build-type: Simple
category: Development
extra-doc-files: README.markdown
license-file: LICENSE.txt
license: ISC
maintainer: Taylor Fausak

source-repository head
  location: https://github.com/tfausak/splint
  type: git

flag pedantic
  default: False
  manual: True

library
  build-depends:
    base ^>=4.18.0.0 || ^>=4.19.0.0,
    containers ^>=0.6.7,
    ghc ^>=9.6.1 || ^>=9.8.1,
    stm ^>=2.5.1.0,

  default-language: Haskell2010
  -- cabal-gild: discover source/library
  exposed-modules:
    Splint
    Splint.RemoteData
    Splint.Replacement
    Splint.Settings

  ghc-options:
    -Weverything
    -Wno-all-missed-specialisations
    -Wno-implicit-prelude
    -Wno-missing-deriving-strategies
    -Wno-missing-export-lists
    -Wno-missing-exported-signatures
    -Wno-missing-import-lists
    -Wno-missing-kind-signatures
    -Wno-missing-safe-haskell-mode
    -Wno-prepositive-qualified-module
    -Wno-safe
    -Wno-unsafe

  hs-source-dirs: source/library

  if flag(pedantic)
    ghc-options: -Werror

  if impl(ghc ^>=9.6.1)
    build-depends: hlint ^>=3.6.1
  elif impl(ghc ^>=9.8.1)
    build-depends: hlint ^>=3.8
    ghc-options: -Wno-missing-role-annotations