packages feed

prompt 0.1.1.0 → 0.1.1.1

raw patch · 5 files changed

+24/−12 lines, 5 filesdep +base-compatPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: base-compat

API changes (from Hackage documentation)

- Control.Monad.Prompt: instance (Alternative t, Traversable t) => Alternative (PromptT a b t)
- Control.Monad.Prompt: instance (Monad t, Traversable t) => Monad (PromptT a b t)
- Control.Monad.Prompt: instance (MonadError e t, Traversable t) => MonadError e (PromptT a b t)
- Control.Monad.Prompt: instance (MonadPlus t, Traversable t) => MonadPlus (PromptT a b t)
- Control.Monad.Prompt: instance (MonadReader r t, Traversable t) => MonadReader r (PromptT a b t)
- Control.Monad.Prompt: instance (MonadState s t, Traversable t) => MonadState s (PromptT a b t)
- Control.Monad.Prompt: instance (MonadWriter w t, Traversable t) => MonadWriter w (PromptT a b t)
- Control.Monad.Prompt: instance Applicative t => Applicative (PromptT a b t)
- Control.Monad.Prompt: instance Applicative t => MonadPrompt a b (PromptT a b t)
- Control.Monad.Prompt: instance Functor t => Functor (PromptT a b t)
- Control.Monad.Prompt: instance MonadTrans (PromptT a b)
- Control.Monad.Prompt.Class: instance (Monad m, MonadPrompt a b m) => MonadPrompt a b (ExceptT e m)
- Control.Monad.Prompt.Class: instance (Monad m, MonadPrompt a b m) => MonadPrompt a b (MaybeT m)
- Control.Monad.Prompt.Class: instance (Monad m, MonadPrompt a b m) => MonadPrompt a b (ReaderT r m)
- Control.Monad.Prompt.Class: instance (Monad m, MonadPrompt a b m) => MonadPrompt a b (StateT s m)
- Control.Monad.Prompt.Class: instance (Monad m, MonadPrompt a b m, Error e) => MonadPrompt a b (ErrorT e m)
- Control.Monad.Prompt.Class: instance (Monad m, MonadPrompt a b m, Monoid w) => MonadPrompt a b (RWST r w s m)
- Control.Monad.Prompt.Class: instance (Monad m, MonadPrompt a b m, Monoid w) => MonadPrompt a b (WriterT w m)
+ Control.Monad.Prompt: instance (Control.Monad.Error.Class.MonadError e t, Data.Traversable.Traversable t) => Control.Monad.Error.Class.MonadError e (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance (Control.Monad.Reader.Class.MonadReader r t, Data.Traversable.Traversable t) => Control.Monad.Reader.Class.MonadReader r (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance (Control.Monad.State.Class.MonadState s t, Data.Traversable.Traversable t) => Control.Monad.State.Class.MonadState s (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance (Control.Monad.Writer.Class.MonadWriter w t, Data.Traversable.Traversable t) => Control.Monad.Writer.Class.MonadWriter w (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance (GHC.Base.Alternative t, Data.Traversable.Traversable t) => GHC.Base.Alternative (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance (GHC.Base.Monad t, Data.Traversable.Traversable t) => GHC.Base.Monad (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance (GHC.Base.MonadPlus t, Data.Traversable.Traversable t) => GHC.Base.MonadPlus (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance Control.Monad.Trans.Class.MonadTrans (Control.Monad.Prompt.PromptT a b)
+ Control.Monad.Prompt: instance GHC.Base.Applicative t => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance GHC.Base.Applicative t => GHC.Base.Applicative (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt: instance GHC.Base.Functor t => GHC.Base.Functor (Control.Monad.Prompt.PromptT a b t)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.Error.ErrorT e m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.Except.ExceptT e m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.Maybe.MaybeT m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.Reader.ReaderT r m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.State.Lazy.StateT s m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.State.Strict.StateT s m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m, GHC.Base.Monoid w) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.RWS.Lazy.RWST r w s m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m, GHC.Base.Monoid w) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.RWS.Strict.RWST r w s m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m, GHC.Base.Monoid w) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.Writer.Lazy.WriterT w m)
+ Control.Monad.Prompt.Class: instance (GHC.Base.Monad m, Control.Monad.Prompt.Class.MonadPrompt a b m, GHC.Base.Monoid w) => Control.Monad.Prompt.Class.MonadPrompt a b (Control.Monad.Trans.Writer.Strict.WriterT w m)

Files

CHANGELOG.md view
@@ -1,3 +1,10 @@+0.1.1.1+-------+<https://github.com/mstksg/prompt/releases/tag/v0.1.1.1>++*   Removed redundant `Error` constraint on `MonadPrompt` instance for+    `ErrorT`.+ 0.1.1.0 ------- <https://github.com/mstksg/prompt/releases/tag/v0.1.1.0>
README.md view
@@ -1,6 +1,13 @@ prompt ====== +[![prompt on Stackage LTS 2](http://stackage.org/package/prompt/badge/lts-2)](http://stackage.org/lts-2/package/prompt)+[![prompt on Stackage LTS 3](http://stackage.org/package/prompt/badge/lts-3)](http://stackage.org/lts-3/package/prompt)+[![prompt on Stackage LTS 4](http://stackage.org/package/prompt/badge/lts-4)](http://stackage.org/lts-4/package/prompt)+[![prompt on Stackage LTS](http://stackage.org/package/prompt/badge/lts)](http://stackage.org/lts/package/prompt)+[![prompt on Stackage Nightly](http://stackage.org/package/prompt/badge/nightly)](http://stackage.org/nightly/package/prompt)++ Lightweight library providing a monad/applicative (and transformer) for delayed-effect "pure" prompt-and-respose queries. 
prompt.cabal view
@@ -2,7 +2,7 @@ --  see http://haskell.org/cabal/users-guide/  name:                prompt-version:             0.1.1.0+version:             0.1.1.1 synopsis:            Monad (and transformer) for deferred-effect pure                      prompt-response queries description:         Monad (and transformer) for delayed-effect "pure"@@ -49,6 +49,7 @@   -- other-modules:          -- other-extensions:       build-depends:       base >=4.6 && <5+                     , base-compat                      , mtl                      , transformers                      , transformers-compat
src/Control/Monad/Prompt.hs view
@@ -1,6 +1,7 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE UndecidableInstances #-}@@ -61,7 +62,7 @@   ) where  import Control.Applicative-import Control.Monad hiding       (sequence, mapM, msum)+import Control.Monad.Compat hiding (sequence, mapM, msum) import Control.Monad.Error.Class import Control.Monad.Prompt.Class import Control.Monad.Reader.Class@@ -70,11 +71,7 @@ import Control.Monad.Writer.Class import Data.Foldable import Data.Functor.Identity--#if !MIN_VERSION_base(4,8,0)-import Data.Traversable-import Prelude hiding (sequence, mapM)-#endif+import Prelude.Compat   -- | Like 'Prompt', but can perform its "pure" computations in the context@@ -307,6 +304,8 @@ -- 'Prompt' itself in general has nothing to do with @m@, and cannot -- execute arbitrary @m@ other than that given in the prompt response -- function.+--+-- Effectively treats a @'Prompt' a b@ as a @forall m. ReaderT (a -> m b) m@ runPromptM :: Monad m            => Prompt a b r            -> (a -> m b)   -- ^ "Prompt response function", effectfully
src/Control/Monad/Prompt/Class.hs view
@@ -2,6 +2,7 @@ {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE FunctionalDependencies #-} {-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE UndecidableInstances #-} {-# OPTIONS_GHC -fno-warn-warnings-deprecations #-} @@ -42,6 +43,7 @@ import Control.Monad.Trans.Except import Control.Monad.Trans.Maybe import Control.Monad.Trans.Reader+import Prelude.Compat import qualified Control.Monad.Trans.RWS.Lazy      as RWSL import qualified Control.Monad.Trans.RWS.Strict    as RWSS import qualified Control.Monad.Trans.State.Lazy    as SL@@ -49,10 +51,6 @@ import qualified Control.Monad.Trans.Writer.Lazy   as WL import qualified Control.Monad.Trans.Writer.Strict as WS -#if !MIN_VERSION_base(4,8,0)-import Control.Applicative-import Data.Monoid-#endif  -- | An 'Applicative' (and possibly 'Monad') where you can, at any time, -- "prompt" with an @a@ and receive a @b@ in response.@@ -90,7 +88,7 @@     prompt    = lift . prompt     prompts f = lift . prompts f -instance (Monad m, MonadPrompt a b m, Error e) => MonadPrompt a b (ErrorT e m) where+instance (Monad m, MonadPrompt a b m) => MonadPrompt a b (ErrorT e m) where     prompt    = lift . prompt     prompts f = lift . prompts f