packages feed

wai-extra 3.0.2.2 → 3.0.3

raw patch · 4 files changed

+40/−1 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Network.Wai.Middleware.AddHeaders: addHeaders :: [(ByteString, ByteString)] -> Middleware

Files

+ ChangeLog.md view
@@ -0,0 +1,3 @@+## 3.0.3++Add the `AddHeaders` middleware.
+ Network/Wai/Middleware/AddHeaders.hs view
@@ -0,0 +1,30 @@+-- |+--+-- Since 3.0.3+module Network.Wai.Middleware.AddHeaders+    ( addHeaders+    ) where++import Network.HTTP.Types   (ResponseHeaders, Header)+import Network.Wai          (Middleware)+import Network.Wai.Internal (Response(..))+import Data.ByteString      (ByteString)++import qualified Data.CaseInsensitive as CI+import Control.Arrow (first)++addHeaders :: [(ByteString, ByteString)] -> Middleware+-- ^ Prepend a list of headers without any checks+--+-- Since 3.0.3++addHeaders h app req respond = app req $ respond . addHeaders' (map (first CI.mk) h)++mapHeader :: (ResponseHeaders -> ResponseHeaders) -> Response -> Response+mapHeader f (ResponseFile s h b1 b2) = ResponseFile s (f h) b1 b2+mapHeader f (ResponseBuilder s h b) = ResponseBuilder s (f h) b+mapHeader f (ResponseStream s h b) = ResponseStream s (f h) b+mapHeader _ r@(ResponseRaw _ _) = r++addHeaders' :: [Header] -> Response -> Response+addHeaders' h = mapHeader (\hs -> h ++ hs)
+ README.md view
@@ -0,0 +1,3 @@+## wai-extra++The goal here is to provide common features without many dependencies.
wai-extra.cabal view
@@ -1,5 +1,5 @@ Name:                wai-extra-Version:             3.0.2.2+Version:             3.0.3 Synopsis:            Provides some basic WAI handlers and middleware. Description:         The goal here is to provide common features without many dependencies. License:             MIT@@ -16,6 +16,8 @@   test/json   test/test.html   test/sample.hs+  ChangeLog.md+  README.md  Library   Build-Depends:     base                      >= 4 && < 5@@ -52,6 +54,7 @@   Exposed-modules:   Network.Wai.Handler.CGI                      Network.Wai.Handler.SCGI                      Network.Wai.Middleware.AcceptOverride+                     Network.Wai.Middleware.AddHeaders                      Network.Wai.Middleware.Autohead                      Network.Wai.Middleware.CleanPath                      Network.Wai.Middleware.Local