packages feed

wai-routes 0.8.0 → 0.8.1

raw patch · 4 files changed

+12/−6 lines, 4 filesdep ~aesondep ~hspecPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: aeson, hspec

API changes (from Hackage documentation)

- Network.Wai.Middleware.Routes.Handler: instance (Monad m, Functor m) => Applicative (HandlerMI sub master m)
- Network.Wai.Middleware.Routes.Handler: instance Functor m => Functor (HandlerMI sub master m)
- Network.Wai.Middleware.Routes.Handler: instance Monad m => Monad (HandlerMI sub master m)
- Network.Wai.Middleware.Routes.Handler: instance Monad m => MonadState (HandlerState sub master) (HandlerMI sub master m)
- Network.Wai.Middleware.Routes.Handler: instance MonadIO m => MonadIO (HandlerMI sub master m)
- Network.Wai.Middleware.Routes.Handler: instance MonadTrans (HandlerMI sub master)
- Network.Wai.Middleware.Routes.Monad: instance Functor RouterF
- Network.Wai.Middleware.Routes.Overlap: overlap1 :: Overlap t -> ResourceTree t
- Network.Wai.Middleware.Routes.Overlap: overlap2 :: Overlap t -> ResourceTree t
- Network.Wai.Middleware.Routes.Overlap: overlapParents :: Overlap t -> [String] -> [String]
- Network.Wai.Middleware.Routes.Parse: instance Eq TypeTree
- Network.Wai.Middleware.Routes.Parse: instance Show TypeTree
- Network.Wai.Middleware.Routes.Routes: envMaster :: Env sub master -> master
- Network.Wai.Middleware.Routes.Routes: envSub :: Env sub master -> sub
- Network.Wai.Middleware.Routes.Routes: envToMaster :: Env sub master -> Route sub -> Route master
- Network.Wai.Middleware.Routes.TH.Dispatch: mds404 :: MkDispatchSettings -> Q Exp
- Network.Wai.Middleware.Routes.TH.Dispatch: mds405 :: MkDispatchSettings -> Q Exp
- Network.Wai.Middleware.Routes.TH.Dispatch: mdsGetHandler :: MkDispatchSettings -> Maybe String -> String -> Q Exp
- Network.Wai.Middleware.Routes.TH.Dispatch: mdsGetPathInfo :: MkDispatchSettings -> Q Exp
- Network.Wai.Middleware.Routes.TH.Dispatch: mdsMethod :: MkDispatchSettings -> Q Exp
- Network.Wai.Middleware.Routes.TH.Dispatch: mdsRunHandler :: MkDispatchSettings -> Q Exp
- Network.Wai.Middleware.Routes.TH.Dispatch: mdsSetPathInfo :: MkDispatchSettings -> Q Exp
- Network.Wai.Middleware.Routes.TH.Dispatch: mdsSubDispatcher :: MkDispatchSettings -> Q Exp
- Network.Wai.Middleware.Routes.TH.Types: frCheck :: FlatResource a -> Bool
- Network.Wai.Middleware.Routes.TH.Types: frDispatch :: FlatResource a -> Dispatch a
- Network.Wai.Middleware.Routes.TH.Types: frName :: FlatResource a -> String
- Network.Wai.Middleware.Routes.TH.Types: frParentPieces :: FlatResource a -> [(String, [Piece a])]
- Network.Wai.Middleware.Routes.TH.Types: frPieces :: FlatResource a -> [Piece a]
- Network.Wai.Middleware.Routes.TH.Types: instance Functor Dispatch
- Network.Wai.Middleware.Routes.TH.Types: instance Functor Piece
- Network.Wai.Middleware.Routes.TH.Types: instance Functor Resource
- Network.Wai.Middleware.Routes.TH.Types: instance Functor ResourceTree
- Network.Wai.Middleware.Routes.TH.Types: instance Lift t => Lift (Dispatch t)
- Network.Wai.Middleware.Routes.TH.Types: instance Lift t => Lift (Piece t)
- Network.Wai.Middleware.Routes.TH.Types: instance Lift t => Lift (Resource t)
- Network.Wai.Middleware.Routes.TH.Types: instance Lift t => Lift (ResourceTree t)
- Network.Wai.Middleware.Routes.TH.Types: instance Show typ => Show (Dispatch typ)
- Network.Wai.Middleware.Routes.TH.Types: instance Show typ => Show (Piece typ)
- Network.Wai.Middleware.Routes.TH.Types: instance Show typ => Show (Resource typ)
- Network.Wai.Middleware.Routes.TH.Types: methodsMethods :: Dispatch typ -> [String]
- Network.Wai.Middleware.Routes.TH.Types: methodsMulti :: Dispatch typ -> Maybe typ
- Network.Wai.Middleware.Routes.TH.Types: resourceAttrs :: Resource typ -> [String]
- Network.Wai.Middleware.Routes.TH.Types: resourceCheck :: Resource typ -> CheckOverlap
- Network.Wai.Middleware.Routes.TH.Types: resourceDispatch :: Resource typ -> Dispatch typ
- Network.Wai.Middleware.Routes.TH.Types: resourceName :: Resource typ -> String
- Network.Wai.Middleware.Routes.TH.Types: resourcePieces :: Resource typ -> [Piece typ]
- Network.Wai.Middleware.Routes.TH.Types: subsiteFunc :: Dispatch typ -> String
- Network.Wai.Middleware.Routes.TH.Types: subsiteType :: Dispatch typ -> typ
- Util.Free: instance Functor f => Applicative (F f)
- Util.Free: instance Functor f => Functor (F f)
- Util.Free: instance Functor f => Monad (F f)
- Util.Free: runF :: F f a -> forall r. (a -> r) -> (f r -> r) -> r
+ Network.Wai.Middleware.Routes: type HandlerMM master a = HandlerM master master a
+ Network.Wai.Middleware.Routes.Handler: instance Control.Monad.IO.Class.MonadIO m => Control.Monad.IO.Class.MonadIO (Network.Wai.Middleware.Routes.Handler.HandlerMI sub master m)
+ Network.Wai.Middleware.Routes.Handler: instance Control.Monad.Trans.Class.MonadTrans (Network.Wai.Middleware.Routes.Handler.HandlerMI sub master)
+ Network.Wai.Middleware.Routes.Handler: instance GHC.Base.Functor m => GHC.Base.Functor (Network.Wai.Middleware.Routes.Handler.HandlerMI sub master m)
+ Network.Wai.Middleware.Routes.Handler: instance GHC.Base.Monad m => Control.Monad.State.Class.MonadState (Network.Wai.Middleware.Routes.Handler.HandlerState sub master) (Network.Wai.Middleware.Routes.Handler.HandlerMI sub master m)
+ Network.Wai.Middleware.Routes.Handler: instance GHC.Base.Monad m => GHC.Base.Applicative (Network.Wai.Middleware.Routes.Handler.HandlerMI sub master m)
+ Network.Wai.Middleware.Routes.Handler: instance GHC.Base.Monad m => GHC.Base.Monad (Network.Wai.Middleware.Routes.Handler.HandlerMI sub master m)
+ Network.Wai.Middleware.Routes.Handler: type HandlerMM master a = HandlerM master master a
+ Network.Wai.Middleware.Routes.Monad: instance GHC.Base.Functor Network.Wai.Middleware.Routes.Monad.RouterF
+ Network.Wai.Middleware.Routes.Overlap: [overlap1] :: Overlap t -> ResourceTree t
+ Network.Wai.Middleware.Routes.Overlap: [overlap2] :: Overlap t -> ResourceTree t
+ Network.Wai.Middleware.Routes.Overlap: [overlapParents] :: Overlap t -> [String] -> [String]
+ Network.Wai.Middleware.Routes.Parse: instance GHC.Classes.Eq Network.Wai.Middleware.Routes.Parse.TypeTree
+ Network.Wai.Middleware.Routes.Parse: instance GHC.Show.Show Network.Wai.Middleware.Routes.Parse.TypeTree
+ Network.Wai.Middleware.Routes.Routes: [envMaster] :: Env sub master -> master
+ Network.Wai.Middleware.Routes.Routes: [envSub] :: Env sub master -> sub
+ Network.Wai.Middleware.Routes.Routes: [envToMaster] :: Env sub master -> Route sub -> Route master
+ Network.Wai.Middleware.Routes.TH.Dispatch: [mds404] :: MkDispatchSettings -> Q Exp
+ Network.Wai.Middleware.Routes.TH.Dispatch: [mds405] :: MkDispatchSettings -> Q Exp
+ Network.Wai.Middleware.Routes.TH.Dispatch: [mdsGetHandler] :: MkDispatchSettings -> Maybe String -> String -> Q Exp
+ Network.Wai.Middleware.Routes.TH.Dispatch: [mdsGetPathInfo] :: MkDispatchSettings -> Q Exp
+ Network.Wai.Middleware.Routes.TH.Dispatch: [mdsMethod] :: MkDispatchSettings -> Q Exp
+ Network.Wai.Middleware.Routes.TH.Dispatch: [mdsRunHandler] :: MkDispatchSettings -> Q Exp
+ Network.Wai.Middleware.Routes.TH.Dispatch: [mdsSetPathInfo] :: MkDispatchSettings -> Q Exp
+ Network.Wai.Middleware.Routes.TH.Dispatch: [mdsSubDispatcher] :: MkDispatchSettings -> Q Exp
+ Network.Wai.Middleware.Routes.TH.Types: [frCheck] :: FlatResource a -> Bool
+ Network.Wai.Middleware.Routes.TH.Types: [frDispatch] :: FlatResource a -> Dispatch a
+ Network.Wai.Middleware.Routes.TH.Types: [frName] :: FlatResource a -> String
+ Network.Wai.Middleware.Routes.TH.Types: [frParentPieces] :: FlatResource a -> [(String, [Piece a])]
+ Network.Wai.Middleware.Routes.TH.Types: [frPieces] :: FlatResource a -> [Piece a]
+ Network.Wai.Middleware.Routes.TH.Types: [methodsMethods] :: Dispatch typ -> [String]
+ Network.Wai.Middleware.Routes.TH.Types: [methodsMulti] :: Dispatch typ -> Maybe typ
+ Network.Wai.Middleware.Routes.TH.Types: [resourceAttrs] :: Resource typ -> [String]
+ Network.Wai.Middleware.Routes.TH.Types: [resourceCheck] :: Resource typ -> CheckOverlap
+ Network.Wai.Middleware.Routes.TH.Types: [resourceDispatch] :: Resource typ -> Dispatch typ
+ Network.Wai.Middleware.Routes.TH.Types: [resourceName] :: Resource typ -> String
+ Network.Wai.Middleware.Routes.TH.Types: [resourcePieces] :: Resource typ -> [Piece typ]
+ Network.Wai.Middleware.Routes.TH.Types: [subsiteFunc] :: Dispatch typ -> String
+ Network.Wai.Middleware.Routes.TH.Types: [subsiteType] :: Dispatch typ -> typ
+ Network.Wai.Middleware.Routes.TH.Types: instance GHC.Base.Functor Network.Wai.Middleware.Routes.TH.Types.Dispatch
+ Network.Wai.Middleware.Routes.TH.Types: instance GHC.Base.Functor Network.Wai.Middleware.Routes.TH.Types.Piece
+ Network.Wai.Middleware.Routes.TH.Types: instance GHC.Base.Functor Network.Wai.Middleware.Routes.TH.Types.Resource
+ Network.Wai.Middleware.Routes.TH.Types: instance GHC.Base.Functor Network.Wai.Middleware.Routes.TH.Types.ResourceTree
+ Network.Wai.Middleware.Routes.TH.Types: instance GHC.Show.Show typ => GHC.Show.Show (Network.Wai.Middleware.Routes.TH.Types.Dispatch typ)
+ Network.Wai.Middleware.Routes.TH.Types: instance GHC.Show.Show typ => GHC.Show.Show (Network.Wai.Middleware.Routes.TH.Types.Piece typ)
+ Network.Wai.Middleware.Routes.TH.Types: instance GHC.Show.Show typ => GHC.Show.Show (Network.Wai.Middleware.Routes.TH.Types.Resource typ)
+ Network.Wai.Middleware.Routes.TH.Types: instance Language.Haskell.TH.Syntax.Lift t => Language.Haskell.TH.Syntax.Lift (Network.Wai.Middleware.Routes.TH.Types.Dispatch t)
+ Network.Wai.Middleware.Routes.TH.Types: instance Language.Haskell.TH.Syntax.Lift t => Language.Haskell.TH.Syntax.Lift (Network.Wai.Middleware.Routes.TH.Types.Piece t)
+ Network.Wai.Middleware.Routes.TH.Types: instance Language.Haskell.TH.Syntax.Lift t => Language.Haskell.TH.Syntax.Lift (Network.Wai.Middleware.Routes.TH.Types.Resource t)
+ Network.Wai.Middleware.Routes.TH.Types: instance Language.Haskell.TH.Syntax.Lift t => Language.Haskell.TH.Syntax.Lift (Network.Wai.Middleware.Routes.TH.Types.ResourceTree t)
+ Util.Free: [runF] :: F f a -> forall r. (a -> r) -> (f r -> r) -> r
+ Util.Free: instance GHC.Base.Functor f => GHC.Base.Applicative (Util.Free.F f)
+ Util.Free: instance GHC.Base.Functor f => GHC.Base.Functor (Util.Free.F f)
+ Util.Free: instance GHC.Base.Functor f => GHC.Base.Monad (Util.Free.F f)
- Network.Wai.Middleware.Routes: route :: Routable master master => master -> RouteM ()
+ Network.Wai.Middleware.Routes: route :: (Routable master master) => master -> RouteM ()
- Network.Wai.Middleware.Routes.Monad: route :: Routable master master => master -> RouteM ()
+ Network.Wai.Middleware.Routes.Monad: route :: (Routable master master) => master -> RouteM ()

Files

README.md view
@@ -1,4 +1,4 @@-[Wai-Routes](https://ajnsit.github.io/wai-routes) [![Hackage](https://img.shields.io/badge/hackage-v0.8.0-brightgreen.svg)](https://hackage.haskell.org/package/wai-routes) [![Hackage-Deps](https://img.shields.io/hackage-deps/v/wai-routes.svg)](http://packdeps.haskellers.com/feed?needle=wai-routes) [![Build Status](https://img.shields.io/travis/ajnsit/wai-routes.svg)](https://travis-ci.org/ajnsit/wai-routes) [![Coverage Status](https://coveralls.io/repos/ajnsit/wai-routes/badge.svg?branch=master&service=github)](https://coveralls.io/github/ajnsit/wai-routes?branch=master)+[Wai-Routes](https://ajnsit.github.io/wai-routes) [![Hackage](https://img.shields.io/badge/hackage-v0.8.1-brightgreen.svg)](https://hackage.haskell.org/package/wai-routes) [![Hackage-Deps](https://img.shields.io/hackage-deps/v/wai-routes.svg)](http://packdeps.haskellers.com/feed?needle=wai-routes) [![Build Status](https://img.shields.io/travis/ajnsit/wai-routes.svg)](https://travis-ci.org/ajnsit/wai-routes) [![Coverage Status](https://coveralls.io/repos/ajnsit/wai-routes/badge.svg?branch=master&service=github)](https://coveralls.io/github/ajnsit/wai-routes?branch=master) ====================================  Wai-routes is a micro web framework for Haskell that focuses on typesafe URLs.@@ -80,6 +80,7 @@ Changelog ========= +* 0.8.1 : Bumped dependencies. Added 'HandlerMM' type alias * 0.8.0 : Replaced 'show/renderRoute' with 'show/renderRouteSub' and 'show/renderRouteMaster'. Added functions to access request headers (reqHeader/s), send a part of a file (filepart). Auto infer mime-types when sending files. Added cookie handling functions (get/setCookie/s). Added 'sub' to allow access to subsite datatype. * 0.7.3 : Added 'stream' to stream responses. Added 'asContent', 'css', and 'javascript' functions. * 0.7.2 : Added 'file' to send a raw file directly, 'rawBody' and 'jsonBody' to consume request body. Refactored RouteM to add 'catchAll' and 'waiApp'.
src/Network/Wai/Middleware/Routes.hs view
@@ -60,6 +60,7 @@      -- * HandlerM Monad makes it easy to build a handler     , HandlerM()+    , HandlerMM()            -- | HandlerM Monad specialised for top level sites (no subsites)     , runHandlerM            -- | Run a HandlerM to get a Handler     , request                -- | Access the request data     , reqHeader              -- | Get a particular request header (case insensitive)
src/Network/Wai/Middleware/Routes/Handler.hs view
@@ -12,6 +12,7 @@ -} module Network.Wai.Middleware.Routes.Handler     ( HandlerM()             -- | A Monad that makes it easier to build a Handler+    , HandlerMM()            -- | HandlerM Monad specialised for top level sites (no subsites)     , runHandlerM            -- | Run a HandlerM to get a Handler     , request                -- | Access the request data     , reqHeader              -- | Get a particular request header (case insensitive)@@ -95,6 +96,9 @@  -- | The HandlerM Monad type HandlerM sub master a = HandlerMI sub master IO a++-- | A HandlerMM is a HandlerM Monad for use with a top level site (where the sub and master datatypes are the same)+type HandlerMM master a = HandlerM master master a  -- | The state kept in a HandlerM Monad data HandlerState sub master = HandlerState
wai-routes.cabal view
@@ -1,5 +1,5 @@ name          : wai-routes-version       : 0.8.0+version       : 0.8.1 cabal-version : >=1.18 build-type    : Simple license       : MIT@@ -20,8 +20,8 @@  source-repository this     type     : git-    location : http://github.com/ajnsit/wai-routes/tree/v0.8.0-    tag      : v0.8.0+    location : http://github.com/ajnsit/wai-routes/tree/v0.8.1+    tag      : v0.8.1  library     build-depends: base               >= 4.7  && < 4.9@@ -71,8 +71,8 @@    build-depends: base           >= 4.7 && < 4.9                , wai            >= 3.0 && < 3.1-               , aeson          >= 0.8 && < 0.9-               , hspec          >= 2.1 && < 2.2+               , aeson          >= 0.8 && < 0.10+               , hspec          >= 2.1 && < 2.3                , hspec-wai      >= 0.6 && < 0.7                , hspec-wai-json >= 0.6 && < 0.7                , wai-routes