packages feed

hls-tactics-plugin-1.0.0.0: hls-tactics-plugin.cabal

cabal-version:      2.2
category:           Development
name:               hls-tactics-plugin
version:            1.0.0.0
synopsis:           Wingman plugin for Haskell Language Server
description:        Please see README.md
author:             Sandy Maguire, Reed Mullanix
maintainer:         sandy@sandymaguire.me
copyright:          Sandy Maguire, Reed Mullanix
homepage:           https://haskellwingman.dev
bug-reports:        https://github.com/haskell/haskell-language-server/issues
license:            Apache-2.0
license-file:       LICENSE
build-type:         Simple
extra-source-files:
  README.md
--   ChangeLog.md

flag pedantic
  description: Enable -Werror
  default:     False
  manual:      True

library
  hs-source-dirs:   src
  exposed-modules:
    Ide.Plugin.Tactic
    Ide.Plugin.Tactic.Auto
    Ide.Plugin.Tactic.CaseSplit
    Ide.Plugin.Tactic.CodeGen
    Ide.Plugin.Tactic.CodeGen.Utils
    Ide.Plugin.Tactic.Context
    Ide.Plugin.Tactic.Debug
    Ide.Plugin.Tactic.FeatureSet
    Ide.Plugin.Tactic.GHC
    Ide.Plugin.Tactic.Judgements
    Ide.Plugin.Tactic.KnownStrategies
    Ide.Plugin.Tactic.KnownStrategies.QuickCheck
    Ide.Plugin.Tactic.LanguageServer
    Ide.Plugin.Tactic.LanguageServer.TacticProviders
    Ide.Plugin.Tactic.Machinery
    Ide.Plugin.Tactic.Naming
    Ide.Plugin.Tactic.Range
    Ide.Plugin.Tactic.Simplify
    Ide.Plugin.Tactic.Tactics
    Ide.Plugin.Tactic.Types
    Ide.Plugin.Tactic.TestTypes

  ghc-options:
    -Wno-name-shadowing -Wredundant-constraints -Wno-unticked-promoted-constructors
  if flag(pedantic)
    ghc-options: -Werror

  build-depends:
    , aeson
    , base           >=4.12 && <5
    , containers
    , directory
    , extra
    , filepath
    , fingertree
    , generic-lens
    , ghc
    , ghc-boot-th
    , ghc-exactprint
    , ghc-source-gen
    , ghcide         ^>= 1.0.0.0
    , lsp
    , hls-plugin-api ^>= 1.0.0.0
    , lens
    , mtl
    , refinery       ^>=0.3
    , retrie         >=0.1.1.0
    , shake          >=0.17.5
    , syb
    , text
    , transformers
    , deepseq

  default-language: Haskell2010
  default-extensions: DataKinds, TypeOperators


executable test-server
  default-language:   Haskell2010
  build-depends:
    , base
    , data-default
    , ghcide
    , hls-tactics-plugin
    , hls-plugin-api
    , shake
  main-is: Server.hs
  hs-source-dirs: test
  ghc-options:
    "-with-rtsopts=-I0 -A128M"
    -threaded -Wall -Wno-name-shadowing -Wredundant-constraints

test-suite tests
  type: exitcode-stdio-1.0
  main-is: Main.hs
  other-modules:
    AutoTupleSpec
    GoldenSpec
    UnificationSpec
  hs-source-dirs:
      test
  ghc-options: -Wall -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      QuickCheck
    , aeson
    , base
    , bytestring
    , checkers
    , containers
    , data-default
    , deepseq
    , directory
    , filepath
    , ghc
    , ghcide                >= 0.7.5.0
    , hie-bios
    , hls-plugin-api
    , hls-tactics-plugin
    , hspec
    , hspec-expectations
    , lens
    , lsp-test
    , lsp-types
    , megaparsec
    , mtl
    , tasty
    , tasty-ant-xml           >=1.1.6
    , tasty-expected-failure
    , tasty-golden
    , tasty-hunit
    , tasty-rerun
    , text
  build-tool-depends:
      hspec-discover:hspec-discover
    , hls-tactics-plugin:test-server -any
  default-language: Haskell2010