wai-logger 2.4.0 → 2.4.1
raw patch · 3 files changed
+49/−60 lines, 3 filesdep −doctestdep −wai-loggerdep ~base
Dependencies removed: doctest, wai-logger
Dependency ranges changed: base
Files
- Network/Wai/Logger/Apache.hs +14/−4
- test/doctests.hs +0/−12
- wai-logger.cabal +35/−44
Network/Wai/Logger/Apache.hs view
@@ -23,6 +23,7 @@ import Data.Monoid (mappend) #endif import Network.HTTP.Types (Status, statusCode)+import Network.HTTP.Types.Header (HeaderName) import Network.Wai (Request(..)) import Network.Wai.Logger.IP import System.Log.FastLogger@@ -37,6 +38,8 @@ FromSocket -- | From X-Real-IP: or X-Forwarded-For: in the HTTP header. | FromHeader+ -- | From a custom HTTP header, useful in proxied environment.+ | FromHeaderCustom [HeaderName] -- | From the peer address if header is not found. | FromFallback @@ -107,9 +110,10 @@ -- getSourceIP = getSourceIP fromString fromByteString getSourceIP :: IPAddrSource -> Request -> ByteString-getSourceIP FromSocket = getSourceFromSocket-getSourceIP FromHeader = getSourceFromHeader+getSourceIP FromSocket = getSourceFromSocket+getSourceIP FromHeader = getSourceFromHeader getSourceIP FromFallback = getSourceFromFallback+getSourceIP (FromHeaderCustom hs) = fromMaybe "-" . getSourceFromHeaderCustom hs -- | -- >>> getSourceFromSocket defaultRequest@@ -151,8 +155,14 @@ -- >>> getSource defaultRequest -- Nothing getSource :: Request -> Maybe ByteString-getSource req = addr+getSource = getSourceFromHeaders ["x-real-ip", "x-forwarded-for"]++getSourceFromHeaders :: [HeaderName] -> Request -> Maybe ByteString+getSourceFromHeaders headerNames req = addr where- maddr = find (\x -> fst x `elem` ["x-real-ip", "x-forwarded-for"]) hdrs+ maddr = find (\(name,_) -> name `elem` headerNames) hdrs addr = fmap snd maddr hdrs = requestHeaders req++getSourceFromHeaderCustom :: [HeaderName] -> Request -> Maybe ByteString+getSourceFromHeaderCustom hs = getSourceFromHeaders hs
− test/doctests.hs
@@ -1,12 +0,0 @@-module Main where--import Build_doctests (flags, pkgs, module_sources)-import Data.Foldable (traverse_)-import Test.DocTest (doctest)--main :: IO ()-main = do- traverse_ putStrLn args- doctest args- where- args = flags ++ pkgs ++ module_sources
wai-logger.cabal view
@@ -1,48 +1,39 @@-Name: wai-logger-Version: 2.4.0-Author: Kazu Yamamoto <kazu@iij.ad.jp>-Maintainer: Kazu Yamamoto <kazu@iij.ad.jp>-License: BSD3-License-File: LICENSE-Synopsis: A logging system for WAI-Description: A logging system for WAI-Category: Web, Yesod-Cabal-Version: >= 1.10-Build-Type: Custom-Tested-With: GHC ==7.8.4 || ==7.10.3 || ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.3+cabal-version: >=1.10+name: wai-logger+version: 2.4.1+license: BSD3+license-file: LICENSE+maintainer: Kazu Yamamoto <kazu@iij.ad.jp>+author: Kazu Yamamoto <kazu@iij.ad.jp>+tested-with:+ ghc ==7.8.4 || ==7.10.3 || ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.3 -Custom-Setup- Setup-Depends: base, Cabal, cabal-doctest >=1.0.6 && <1.1+synopsis: A logging system for WAI+description: A logging system for WAI(Web Application Interface)+category: Web, Yesod+build-type: Simple -Library- Default-Language: Haskell2010- GHC-Options: -Wall- Exposed-Modules: Network.Wai.Logger- Other-Modules: Network.Wai.Logger.Apache- Network.Wai.Logger.IP- Network.Wai.Logger.IORef- Build-Depends: base >= 4 && < 5- , byteorder- , bytestring- , fast-logger >= 3- , http-types- , network- , wai >= 2.0.0- if impl(ghc >= 8)- Default-Extensions: Strict StrictData+source-repository head+ type: git+ location: https://github.com/kazu-yamamoto/logger.git -Test-Suite doctests- Type: exitcode-stdio-1.0- Default-Language: Haskell2010- HS-Source-Dirs: test- Ghc-Options: -Wall- Main-Is: doctests.hs- Build-Depends: base- , wai-logger- , doctest >= 0.10.1- if impl(ghc >= 8)- Default-Extensions: Strict StrictData+library+ exposed-modules: Network.Wai.Logger+ other-modules:+ Network.Wai.Logger.Apache+ Network.Wai.Logger.IP+ Network.Wai.Logger.IORef -Source-Repository head- Type: git- Location: git://github.com/kazu-yamamoto/logger.git+ default-language: Haskell2010+ ghc-options: -Wall+ build-depends:+ base >=4 && <5,+ byteorder,+ bytestring,+ fast-logger >=3,+ http-types,+ network,+ wai >=2.0.0++ if impl(ghc >=8)+ default-extensions: Strict StrictData