packages feed

nvim-hs-2.3.1.0: nvim-hs.cabal

name:                nvim-hs
version:             2.3.1.0
synopsis:            Haskell plugin backend for neovim
description:
  This package provides a plugin provider for neovim. It allows you to write
  plugins for one of the great editors of our time in the best programming
  language of our time! ;-)
  .
  You should find all the documentation you need inside the "Neovim" module.
  Most other modules are considered internal, so don't be annoyed if using
  things from there may break your code!
  .
  The following modules may also be of interest and they should not change
  their API: "Neovim.Quickfix"
  .
  If you want to write unit tests that interact with neovim, "Neovim.Test"
  provides some useful functions for that.
  .
  If you are keen to debug /nvim-hs/ or a module you are writing, take a look
  at the "Neovim.Debug" module.
  .
  If you spot any errors or if you have great ideas, feel free to open an issue
  on github.
homepage:            https://github.com/neovimhaskell/nvim-hs
license:             Apache-2.0
license-file:        LICENSE
author:              Sebastian Witte
maintainer:          woozletoff@gmail.com
copyright:           Copyright 2017-2018 Sebastian Witte <woozletoff@gmail.com>
category:            Editor
build-type:          Simple
cabal-version:       1.18
extra-source-files:    test-files/hello
                     , apiblobs/0.1.7.msgpack
                     , apiblobs/0.2.0.msgpack
                     , apiblobs/0.3.0.msgpack
                     , apiblobs/0.4.3.msgpack
                     , apiblobs/0.5.0.msgpack
                     , apiblobs/0.6.1.msgpack
                     , apiblobs/0.8.0.msgpack
                     , api

extra-doc-files:       CHANGELOG.md
                     , README.md
                     , apiblobs/README.md

source-repository head
    type:            git
    location:        https://github.com/neovimhaskell/nvim-hs

library
  exposed-modules:      Neovim
                      , Neovim.Quickfix
                      , Neovim.Debug
                      , Neovim.Test
  -- Note that every module below this is considered internal and if you have to
  -- import it somewhere in your code and you think it should be generally
  -- available , you should open a ticket about inclusion in the export list of
  -- the Neovim module. Since we are still in a prototyping stage, every user of
  -- this library should have the freedom to do what she wants.
                      , Neovim.API.String
                      , Neovim.API.Text
                      , Neovim.API.ByteString
                      , Neovim.Classes
                      , Neovim.Compat.Megaparsec
                      , Neovim.Config
                      , Neovim.Context
                      , Neovim.Context.Internal
                      , Neovim.Exceptions
                      , Neovim.Plugin
                      , Neovim.Plugin.Classes
                      , Neovim.Plugin.Internal
                      , Neovim.Plugin.IPC
                      , Neovim.Plugin.IPC.Classes
                      , Neovim.Log
                      , Neovim.Main
                      , Neovim.RPC.Classes
                      , Neovim.RPC.Common
                      , Neovim.RPC.EventHandler
                      , Neovim.RPC.FunctionCall
                      , Neovim.RPC.SocketReader
                      , Neovim.Util
                      , Neovim.API.Parser
                      , Neovim.API.TH
  default-extensions:   OverloadedStrings
                      , LambdaCase
                      , ScopedTypeVariables
  other-extensions:     BangPatterns
                      , CPP
                      , DeriveDataTypeable
                      , DeriveGeneric
                      , ExistentialQuantification
                      , FlexibleContexts
                      , FlexibleInstances
                      , GADTs
                      , GeneralizedNewtypeDeriving
                      , MultiParamTypeClasses
                      , MultiWayIf
                      , NamedFieldPuns
                      , NoOverloadedStrings
                      , OverlappingInstances
                      , PackageImports
                      , RankNTypes
                      , RecordWildCards
                      , TemplateHaskell
  build-depends:        base >=4.9 && < 5
                      , bytestring
                      , cereal
                      , cereal-conduit >= 0.8.0
                      , conduit >= 1.3.0
                      , containers
                      , data-default
                      , deepseq >= 1.1 && < 1.5
                      , path
                      , path-io
                      , foreign-store
                      , hslogger
                      , messagepack >= 0.5.4
                      , network
                      , mtl >= 2.2.1 && < 2.3
                      , optparse-applicative
                      , time-locale-compat
                      , megaparsec < 10
                      , prettyprinter >= 1.7 && < 2
                      , prettyprinter-ansi-terminal
                      , resourcet >= 1.1.11
                      , stm
                      , streaming-commons
                      , template-haskell
                      , template-haskell-compat-v0208 >= 0.1.9
                      , text
                      , time
                      , transformers
                      , transformers-base
                      , typed-process
                      , unliftio >= 0.2
                      , unliftio-core >= 0.2
                      , utf8-string
                      , vector
                      , void
  hs-source-dirs:       library
  default-language:     Haskell2010
  ghc-options:          -Wall

  if os(windows)
    cpp-options: -DWINDOWS

test-suite hspec
  type:                 exitcode-stdio-1.0
  hs-source-dirs:       test-suite
  main-is:              Spec.hs
  default-extensions:   OverloadedStrings
                      , LambdaCase
                      , ScopedTypeVariables
  default-language:     Haskell2010
  build-depends:        base >= 4.6 && < 5
                      , nvim-hs

                      , hspec ==2.*
                      , hspec-discover
                      , QuickCheck >=2.6

                      , bytestring
                      , cereal
                      , cereal-conduit
                      , conduit
                      , containers
                      , data-default
                      , path
                      , path-io
                      , foreign-store
                      , hslogger
                      , mtl
                      , messagepack
                      , time-locale-compat
                      , network
                      , optparse-applicative
                      , megaparsec
                      , prettyprinter
                      , prettyprinter-ansi-terminal
                      , typed-process >= 0.2.1.0
                      , resourcet
                      , stm
                      , streaming-commons
                      , text
                      , template-haskell
                      , template-haskell-compat-v0208
                      , time
                      , transformers
                      , transformers-base
                      , unliftio
                      , unliftio-core
                      , utf8-string
                      , vector
                      , HUnit

  other-modules:        Neovim.API.THSpec
                      , Neovim.API.THSpecFunctions
                      , Neovim.EmbeddedRPCSpec
                      , Neovim.EventSubscriptionSpec
                      , Neovim.Plugin.ClassesSpec
                      , Neovim.RPC.SocketReaderSpec
                      , Neovim.RPC.CommonSpec

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