packages feed

ide-backend-0.9.0: ide-backend.cabal

name:                 ide-backend
version:              0.9.0
synopsis:             An IDE backend library
-- description:
license:              MIT
license-file:         LICENSE
author:               Duncan Coutts, Mikolaj Konarski, Edsko de Vries
maintainer:           Duncan Coutts <duncan@well-typed.com>
copyright:            (c) 2015 FP Complete
data-files:           CoreLicenses.txt
category:             Development
build-type:           Simple
cabal-version:        >=1.10

library
  exposed-modules:    IdeSession
  other-modules:      IdeSession.State,
                      IdeSession.Config,
                      IdeSession.Cabal,
                      IdeSession.ExeCabalClient,
                      IdeSession.Licenses,
                      IdeSession.Query,
                      IdeSession.Update,
                      IdeSession.Update.IdeSessionUpdate,
                      IdeSession.Update.ExecuteSessionUpdate,
                      IdeSession.RPC.Client,
                      IdeSession.RPC.API,
                      IdeSession.RPC.Stream,
                      IdeSession.Types.Public,
                      IdeSession.Types.Private,
                      IdeSession.Types.Translation,
                      IdeSession.Types.Progress,
                      IdeSession.GHC.API,
                      IdeSession.GHC.Requests,
                      IdeSession.GHC.Responses,
                      IdeSession.GHC.Client,
                      IdeSession.Util,
                      IdeSession.Util.BlockingOps,
                      IdeSession.Util.PrettyVal,
                      IdeSession.Strict.Container,
                      IdeSession.Strict.IntMap,
                      IdeSession.Strict.List,
                      IdeSession.Strict.Map,
                      IdeSession.Strict.Maybe,
                      IdeSession.Strict.Trie,
                      IdeSession.Strict.IntervalMap
                      IdeSession.Strict.MVar
                      IdeSession.Strict.IORef
                      IdeSession.Strict.StateT

  build-depends:      base                 ==4.*,
                      filemanip            >= 0.3.6.2 && < 0.4,
                      process              >= 1.1     && < 1.3,
                      filepath             >= 1.3     && < 1.4,
                      directory            >= 1.1     && < 1.3,
                      containers           >= 0.4.1   && < 1,
                      random               >= 1.0.1   && < 2,
                      bytestring           >= 0.9.2   && < 1,
                      mtl                  >= 2.1     && < 2.2,
                      async                >= 2.0     && < 2.1,
                      aeson                >= 0.6.2   && < 0.9,
                      executable-path      >= 0.0     && < 0.1,
                      unix                 >= 2.5     && < 2.8,
                      temporary            >= 1.1.2.4 && < 1.3,
                      bytestring-trie      >= 0.2     && < 0.3,
                      unordered-containers >= 0.2.3   && < 0.3,
                      text                 >= 0.11    && < 1.3,
                      fingertree           >= 0.0.1   && < 0.2,
                      binary               >= 0.7.1.0 && < 0.8,
                      data-accessor        >= 0.2     && < 0.3,
                      data-accessor-mtl    >= 0.2     && < 0.3,
                      crypto-api           >= 0.12    && < 0.14,
                      pureMD5              >= 2.1     && < 2.2,
                      tagged               >= 0.4     && < 0.8,
                      transformers         >= 0.3     && < 0.4,
                      time                 >= 1.4     && < 1.5,
                      attoparsec           >= 0.10    && < 0.13,
                      utf8-string          >= 0.3     && < 0.4,
                      template-haskell,
                      -- our own private fork:
                      Cabal-ide-backend    >= 1.23,
                      ghc-prim,
                      pretty-show

  default-language:   Haskell2010
  default-extensions: MonoLocalBinds
                      BangPatterns
                      RecordWildCards
                      NamedFieldPuns
                      RankNTypes
                      MultiParamTypeClasses
                      ExistentialQuantification
                      FlexibleContexts
                      DeriveDataTypeable
  other-extensions:   CPP
                      TemplateHaskell
                      ScopedTypeVariables,
                      GeneralizedNewtypeDeriving
  ghc-options:        -Wall -fno-warn-unused-do-bind

executable ide-backend-exe-cabal
  hs-source-dirs:     .
  main-is:            ide-backend-exe-cabal.hs
  build-depends:      ide-backend,
                      base                 ==4.*,
                      filemanip            >= 0.3.6.2 && < 0.4,
                      process              >= 1.1     && < 1.3,
                      filepath             >= 1.3     && < 1.4,
                      directory            >= 1.1     && < 1.3,
                      containers           >= 0.4.1   && < 1,
                      random               >= 1.0.1   && < 2,
                      bytestring           >= 0.9.2   && < 1,
                      mtl                  >= 2.1     && < 2.2,
                      async                >= 2.0     && < 2.1,
                      aeson                >= 0.6.2   && < 0.9,
                      executable-path      >= 0.0     && < 0.1,
                      unix                 >= 2.5     && < 2.8,
                      temporary            >= 1.1.2.4 && < 1.3,
                      bytestring-trie      >= 0.2     && < 0.3,
                      unordered-containers >= 0.2.3   && < 0.3,
                      text                 >= 0.11    && < 1.3,
                      fingertree           >= 0.0.1   && < 0.2,
                      binary               >= 0.7.1.0 && < 0.8,
                      data-accessor        >= 0.2     && < 0.3,
                      data-accessor-mtl    >= 0.2     && < 0.3,
                      crypto-api           >= 0.12    && < 0.14,
                      pureMD5              >= 2.1     && < 2.2,
                      tagged               >= 0.4     && < 0.8,
                      transformers         >= 0.3     && < 0.4,
                      time                 >= 1.4     && < 1.5,
                      attoparsec           >= 0.10    && < 0.13,
                      template-haskell,
                      -- our own private fork:
                      Cabal-ide-backend    >= 1.22,
                      ghc-prim,
                      pretty-show

  default-language:   Haskell2010
  default-extensions: MonoLocalBinds,
                      BangPatterns, RecordWildCards, NamedFieldPuns
  other-extensions:   CPP, TemplateHaskell, ScopedTypeVariables,
                      DeriveDataTypeable
  ghc-options:        -Wall -fno-warn-unused-do-bind

test-suite typecheck-dir
  type:               exitcode-stdio-1.0
  main-is:            typecheck-dir.hs
  hs-source-dirs:     test
  build-depends:      base, ide-backend, temporary, filemanip, directory, time, text

  default-language:   Haskell2010
  default-extensions: MonoLocalBinds,
                      BangPatterns, RecordWildCards, NamedFieldPuns
  other-extensions:   CPP, TemplateHaskell, ScopedTypeVariables,
                      DeriveDataTypeable
  ghc-options:        -Wall -fno-warn-unused-do-bind
  ghc-options:        -with-rtsopts=-K16M

test-suite TestSuite
  type:               exitcode-stdio-1.0
  main-is:            TestSuite.hs
  hs-source-dirs:     TestSuite
                      -- TODO: This is only necessary for TestTools, which in
                      -- turn is used by the RPC test suite too. We should
                      -- probably merge that in, too.
                      test
  other-modules:      TestSuite.State
                      TestSuite.Assertions
                      TestSuite.Session
                      TestSuite.Tests.API
                      TestSuite.Tests.Autocompletion
                      TestSuite.Tests.BufferMode
                      TestSuite.Tests.BuildDoc
                      TestSuite.Tests.BuildExe
                      TestSuite.Tests.BuildLicenses
                      TestSuite.Tests.C
                      TestSuite.Tests.CabalMacros
                      TestSuite.Tests.Compilation
                      TestSuite.Tests.Compliance
                      TestSuite.Tests.Concurrency
                      TestSuite.Tests.Crash
                      TestSuite.Tests.Debugger
                      TestSuite.Tests.FFI
                      TestSuite.Tests.Integration
                      TestSuite.Tests.InterruptRunExe
                      TestSuite.Tests.InterruptRunStmt
                      TestSuite.Tests.Issues
                      TestSuite.Tests.Packages
                      TestSuite.Tests.Performance
                      TestSuite.Tests.SessionRestart
                      TestSuite.Tests.SessionState
                      TestSuite.Tests.SnippetEnvironment
                      TestSuite.Tests.StdIO
                      TestSuite.Tests.TH
                      TestSuite.Tests.TypeInformation
                      TestSuite.Tests.UpdateTargets
                      TestTools
  build-depends:      base,
                      ide-backend,
                      tasty,
                      HUnit,
                      tagged,
                      utf8-string,
                      text,
                      bytestring,
                      regex-compat,
                      filepath,
                      filemanip,
                      process,
                      directory,
                      stm,
                      unix,
                      random,
                      Cabal-ide-backend,
                      containers,
                      deepseq
  default-language:   Haskell2010
  ghc-options:        -Wall
                      -threaded
                      -with-rtsopts=-N
  default-extensions: RecordWildCards
                      NamedFieldPuns
                      DeriveDataTypeable
                      OverloadedStrings
                      ScopedTypeVariables
  other-extensions:   TypeSynonymInstances
                      FlexibleInstances
                      OverlappingInstances

test-suite rpc-server
  type:               exitcode-stdio-1.0
  main-is:            rpc-server.hs
  hs-source-dirs:     . server test
  build-depends:      base                 ==4.*,
                      directory            ==1.*,
                      filemanip            >= 0.3.6.2 && < 0.4,
                      process              ==1.*,
                      filepath             ==1.*,
                      containers           >= 0.4.1   && < 1,
                      random               >= 1.0.1   && < 2,
                      bytestring           >= 0.9.2   && < 1,
                      async                >= 2.0     && < 2.1,
                      aeson                >= 0.6     && < 0.9,
                      temporary            >= 1.1.2.4 && < 1.3,
                      test-framework       >= 0.6     && < 0.9,
                      test-framework-hunit >= 0.2     && < 0.4,
                      HUnit                >= 1.2     && < 1.3,
                      executable-path      >= 0.0     && < 0.1,
                      unix                 >= 2.5     && < 2.8,
                      binary               >= 0.7.1.0 && < 0.8,
                      template-haskell

  default-language:   Haskell2010
  default-extensions: MonoLocalBinds,
                      BangPatterns, RecordWildCards, NamedFieldPuns
  other-extensions:   CPP, TemplateHaskell, ScopedTypeVariables,
                      DeriveDataTypeable
  ghc-options:        -Wall -fno-warn-unused-do-bind
  other-modules:      IdeSession.RPC.Server