packages feed

servant-snap 0.7.0.5 → 0.7.3

raw patch · 4 files changed

+27/−17 lines, 4 filesdep ~HUnitdep ~aesondep ~basePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: HUnit, aeson, base, hspec, hspec-core, hspec-snap, mmorph, servant

API changes (from Hackage documentation)

- Servant.Server.Internal.RoutingApplication: instance GHC.Base.Monad m => GHC.Base.Alternative (Servant.Server.Internal.RoutingApplication.DelayedM m)
+ Servant.Server.Internal.RoutingApplication: instance (GHC.Base.Monad m, Snap.Internal.Core.MonadSnap m) => GHC.Base.Alternative (Servant.Server.Internal.RoutingApplication.DelayedM m)

Files

CHANGELOG.md view
@@ -1,3 +1,11 @@+0.7.1+-------++Call 'Snap.Core.pass' when routing an empty URI path. This allows an entire+served API to fall through, which is more in line with the rest of snap routing,+and allows multiple servant API's to be served under the same path context+from 'Snap.Core.route'.+ 0.7.0.5 ------- 
servant-snap.cabal view
@@ -1,5 +1,5 @@ name:                servant-snap-version:             0.7.0.5+version:             0.7.3 synopsis:            A family of combinators for defining webservices APIs and serving them description:   Interpret a Servant API as a Snap server, using any Snaplets you like.@@ -21,7 +21,7 @@ category:            Web build-type:          Simple cabal-version:       >=1.10-tested-with:         GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.1+tested-with:         GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.1 extra-source-files:   CHANGELOG.md   README.md@@ -42,8 +42,8 @@     Servant.Server.Internal.SnapShims     Servant.Utils.StaticFiles   build-depends:-        base               >= 4.7  && < 4.10-      , aeson              >= 0.7  && < 1.1+        base               >= 4.7  && < 4.11+      , aeson              >= 0.7  && < 1.3       , attoparsec         >= 0.12 && < 0.14       , bytestring         >= 0.10 && < 0.11       , case-insensitive   >= 1.2  && < 1.3@@ -55,8 +55,8 @@       , io-streams         >= 1.3  && < 1.4       , network-uri        >= 2.6  && < 2.7       , mtl                >= 2.0  && < 2.3-      , mmorph             >= 1    && < 1.1-      , servant            >= 0.8  && < 0.10+      , mmorph             >= 1    && < 1.2+      , servant            >= 0.8  && < 0.12       , string-conversions >= 0.3  && < 0.5       , text               >= 1.2  && < 1.3       , snap               >= 1.0  && < 1.1@@ -80,7 +80,7 @@     , errors     , heist     , lens-    , servant             >= 0.6+    , servant     , servant-snap     , map-syntax     , snap@@ -97,7 +97,7 @@   hs-source-dirs: test   main-is: Spec.hs   build-depends:-      base == 4.*+      base               == 4.*     , aeson     , base64-bytestring     , bytestring@@ -106,16 +106,16 @@     , directory     , either     , exceptions-    , hspec >= 2.2.3 && < 2.4+    , hspec              >= 2.4.3   && < 2.5     , process     , digestive-functors >= 0.8.1.0 && < 0.9     , time-    , hspec-snap >= 1.0 && < 1.1-    , hspec-core >= 2.2.3 && < 2.3+    , hspec-snap         >= 1.0.0.2 && < 1.1+    , hspec-core         >= 2.4.3   && < 2.5     , http-types-    , HUnit+    , HUnit              >= 1.4     , mtl-    , network >= 2.6+    , network            >= 2.6     , QuickCheck     , parsec     , servant
src/Servant/Server/Internal/Router.hs view
@@ -136,9 +136,9 @@     _ -> respond $ Fail err404   CaptureRouter router' ->     case processedPathInfo request of-      []   -> respond $ Fail err404+      []   -> respond $ Fail err404 -- pass       -- This case is to handle trailing slashes.-      [""] -> respond $ Fail err404+      [""] -> respond $ Fail err404 -- pass       first : _         -> let request' = reqSafeTail request            in  runRouterEnv router' (first,env)  request' respond
src/Servant/Server/Internal/RoutingApplication.hs view
@@ -51,7 +51,9 @@   r <- ra request routingRespond   respond r    where-     routingRespond (Fail err) = respond $ responseServantErr err+     routingRespond (Fail err) = case errHTTPCode err of+       404 -> pass+       _   -> respond $ responseServantErr err      routingRespond (FailFatal err) = respond $ responseServantErr err      routingRespond (Route v) = respond v @@ -118,7 +120,7 @@ instance MonadIO m => MonadIO (DelayedM m) where   liftIO m = DelayedM (const . liftIO $ Route <$> m) -instance Monad m => Alternative (DelayedM m) where+instance (Monad m, MonadSnap m) => Alternative (DelayedM m) where   empty   = DelayedM $ \_ -> return (Fail err404)   a <|> b = DelayedM $ \req -> do     respA <- runDelayedM a req