on master help sign in
Add deprecations for old settings accessors
commitec8b95bd2ce310a3aa099b8f977fd8a8ae76be08 authorMichael Snoyman <michael@snoyman.com> dateThu 6 Mar 2014, 07:12 (13 years ago) parent2d166e8
5 files changed+36−21
warp/Network/Wai/Handler/Warp.hs+14−13 warp/Network/Wai/Handler/Warp/Request.hs+1 warp/Network/Wai/Handler/Warp/Run.hs+1 warp/Network/Wai/Handler/Warp/Settings.hs+13 warp/test/RunSpec.hs+7−8
warp/Network/Wai/Handler/Warp.hs+14−13
@@ -1,4 +1,5 @@
11{-# LANGUAGE CPP #-}
2+{-# OPTIONS_GHC -fno-warn-deprecations #-}
23
34---------------------------------------------------------
45--
@@ -25,6 +26,19 @@ module Network.Wai.Handler.Warp (
2526 -- * Settings
2627 , Settings
2728 , defaultSettings
29+ -- ** Setters
30+ , setPort
31+ , setHost
32+ , setOnException
33+ , setOnExceptionResponse
34+ , setOnOpen
35+ , setOnClose
36+ , setTimeout
37+ , setIntercept
38+ , setManager
39+ , setFdCacheDuration
40+ , setBeforeMainLoop
41+ , setNoParsePath
2842 -- ** Accessors
2943 -- | Note: these accessors are deprecated, please use the @set@ versions instead.
3044 , settingsPort
@@ -39,19 +53,6 @@ module Network.Wai.Handler.Warp (
3953 , settingsFdCacheDuration
4054 , settingsBeforeMainLoop
4155 , settingsNoParsePath
42− -- ** Setters
43− , setPort
44− , setHost
45− , setOnException
46− , setOnExceptionResponse
47− , setOnOpen
48− , setOnClose
49− , setTimeout
50− , setIntercept
51− , setManager
52− , setFdCacheDuration
53− , setBeforeMainLoop
54− , setNoParsePath
5556 -- ** Debugging
5657 , exceptionResponseForDebug
5758 -- * Data types
warp/Network/Wai/Handler/Warp/Request.hs+1
@@ -1,6 +1,7 @@
11{-# LANGUAGE BangPatterns #-}
22{-# LANGUAGE OverloadedStrings #-}
33{-# LANGUAGE CPP #-}
4+{-# OPTIONS_GHC -fno-warn-deprecations #-}
45
56module Network.Wai.Handler.Warp.Request (
67 recvRequest
warp/Network/Wai/Handler/Warp/Run.hs+1
@@ -1,6 +1,7 @@
11{-# LANGUAGE CPP #-}
22{-# LANGUAGE OverloadedStrings #-}
33{-# LANGUAGE ScopedTypeVariables #-}
4+{-# OPTIONS_GHC -fno-warn-deprecations #-}
45
56module Network.Wai.Handler.Warp.Run where
67
warp/Network/Wai/Handler/Warp/Settings.hs+13
@@ -102,3 +102,16 @@ defaultExceptionResponse _ = responseLBS H.internalServerError500 [(H.hContentTy
102102-- | Default implementation of 'settingsOnExceptionResponse' for the debugging purpose. 500, text/plain, a showed exception.
103103exceptionResponseForDebug :: SomeException -> Response
104104exceptionResponseForDebug e = responseLBS H.internalServerError500 [(H.hContentType, "text/plain")] (L8.pack $ "Exception: " ++ show e)
105+
106+{-# DEPRECATED settingsPort "Use setPort instead" #-}
107+{-# DEPRECATED settingsHost "Use setHost instead" #-}
108+{-# DEPRECATED settingsOnException "Use setOnException instead" #-}
109+{-# DEPRECATED settingsOnExceptionResponse "Use setOnExceptionResponse instead" #-}
110+{-# DEPRECATED settingsOnOpen "Use setOnOpen instead" #-}
111+{-# DEPRECATED settingsOnClose "Use setOnClose instead" #-}
112+{-# DEPRECATED settingsTimeout "Use setTimeout instead" #-}
113+{-# DEPRECATED settingsIntercept "Use setIntercept instead" #-}
114+{-# DEPRECATED settingsManager "Use setManager instead" #-}
115+{-# DEPRECATED settingsFdCacheDuration "Use setFdCacheDuration instead" #-}
116+{-# DEPRECATED settingsBeforeMainLoop "Use setBeforeMainLoop instead" #-}
117+{-# DEPRECATED settingsNoParsePath "Use setNoParsePath instead" #-}
warp/test/RunSpec.hs+7−8
@@ -86,11 +86,11 @@ withApp :: Settings -> Application -> (Int -> IO a) -> IO a
8686withApp settings app f = do
8787 port <- getPort
8888 baton <- newEmptyMVar
89+ let settings' = setPort port
90+ $ setBeforeMainLoop (putMVar baton ())
91+ settings
8992 bracket
90− (forkIO $ runSettings settings
91− { settingsPort = port
92− , settingsBeforeMainLoop = putMVar baton ()
93− } app `onException` putMVar baton ())
93+ (forkIO $ runSettings settings' app `onException` putMVar baton ())
9494 killThread
9595 (const $ takeMVar baton >> f port)
9696
@@ -117,9 +117,8 @@ runTerminateTest :: InvalidRequest
117117 -> IO ()
118118runTerminateTest expected input = do
119119 ref <- I.newIORef Nothing
120− withApp defaultSettings
121− { settingsOnException = \_ e -> I.writeIORef ref $ Just e
122− } dummyApp $ \port -> do
120+ let onExc _ = I.writeIORef ref . Just
121+ withApp (setOnException onExc defaultSettings) dummyApp $ \port -> do
123122 handle <- connectTo "127.0.0.1" $ PortNumber $ fromIntegral port
124123 hPutStr handle input
125124 hFlush handle
@@ -276,7 +275,7 @@ spec = do
276275 I.atomicModifyIORef ifront (\front -> (front . ("threadDelay interrupted":), ()))
277276 liftIO $ I.atomicModifyIORef ifront $ \front -> (front . (S.concat bss:), ())
278277 return $ responseLBS status200 [] ""
279− withApp defaultSettings { settingsTimeout = 1 } app $ \port -> do
278+ withApp (setTimeout 1 defaultSettings) app $ \port -> do
280279 let bs1 = S.replicate 2048 88
281280 bs2 = "This is short"
282281 bs = S.append bs1 bs2