cabal-version:       2.4

name:                semantic-python
version:             0.0.0.0
synopsis:            Semantic support for Python.
description:         Semantic support for Python using the semantic-core intermediate language.
homepage:            https://github.com/github/semantic/tree/master/semantic-python#readme
bug-reports:         https://github.com/github/semantic/issues
license:             MIT
license-file:        LICENSE
author:              The Semantic authors
maintainer:          opensource+semantic@github.com
copyright:           (c) 2019 GitHub, Inc.
category:            Language
build-type:          Simple
stability:           alpha
extra-source-files:  README.md

tested-with:         GHC == 8.6.4

common haskell
  default-language:    Haskell2010
  build-depends:       base ^>=4.12
                     , fused-effects ^>= 0.5
                     , semantic-core ^>= 0.0
                     , tree-sitter ^>= 0.2
                     , tree-sitter-python ^>= 0.2

  ghc-options:
    -Weverything
    -Wno-missing-local-signatures
    -Wno-missing-import-lists
    -Wno-implicit-prelude
    -Wno-safe
    -Wno-unsafe
    -Wno-name-shadowing
    -Wno-monomorphism-restriction
    -Wno-missed-specialisations
    -Wno-all-missed-specialisations
    -Wno-star-is-type



library
  import: haskell
  exposed-modules: Language.Python.Core
  hs-source-dirs: src

test-suite test
  import: haskell
  type: exitcode-stdio-1.0
  hs-source-dirs: test
  main-is: Test.hs
  ghc-options: -threaded

  other-modules: Directive
               , Instances

  build-depends: semantic-python == 0.0.0.0
               , aeson ^>= 1.4.4
               , aeson-pretty ^>= 0.8.7
               , bytestring ^>= 0.10.8.2
               , containers ^>= 0.6
               , directory ^>= 1.3.3
               , exceptions ^>= 0.10.2
               , filepath ^>= 1.4.2.1
               , process ^>= 1.6.5
               , streaming ^>= 0.2.2
               , streaming-process ^>= 0.1
               , streaming-bytestring ^>= 0.1.6
               , tasty ^>= 1.2.3
               , tasty-hunit ^>= 0.10.0.2
               , text ^>= 1.2.3
               , trifecta >= 2 && <3
               , unordered-containers ^>= 0.2.10