on master help sign in
Merge pull request #633 from kazu-yamamoto/ghc7.10-or-later
e470d8cMichael Snoyman
wai/Network/Wai/Internal.hs−3
@@ -9,9 +9,6 @@ module Network.Wai.Internal where
9
9
10import Blaze.ByteString.Builder (Builder)
10import Blaze.ByteString.Builder (Builder)
11import qualified Data.ByteString as B hiding (pack)
11import qualified Data.ByteString as B hiding (pack)
12−#if __GLASGOW_HASKELL__ < 709
13−import Data.Functor ((<$>))
14−#endif
15import Data.Text (Text)
12import Data.Text (Text)
16import Data.Typeable (Typeable)
13import Data.Typeable (Typeable)
17import Data.Vault.Lazy (Vault)
14import Data.Vault.Lazy (Vault)
wai/wai.cabal+2−3
@@ -19,9 +19,8 @@ Source-repository head
19 location: git://github.com/yesodweb/wai.git
19 location: git://github.com/yesodweb/wai.git
20
20
21Library
21Library
22− Build-Depends: base >= 4 && < 5
22+ Build-Depends: base >= 4.8 && < 5
23 , bytestring >= 0.10
23 , bytestring >= 0.10
24− , bytestring-builder >= 0.10.4.0 && < 0.11
25 , blaze-builder >= 0.2.1.4 && < 0.5
24 , blaze-builder >= 0.2.1.4 && < 0.5
26 , network >= 2.2.1.5
25 , network >= 2.2.1.5
27 , http-types >= 0.7
26 , http-types >= 0.7
@@ -38,7 +37,7 @@ test-suite test
38 type: exitcode-stdio-1.0
37 type: exitcode-stdio-1.0
39 ghc-options: -threaded
38 ghc-options: -threaded
40 cpp-options: -DTEST
39 cpp-options: -DTEST
41− build-depends: base
40+ build-depends: base >= 4.8 && < 5
42 , wai
41 , wai
43 , hspec
42 , hspec
44 , blaze-builder
43 , blaze-builder
warp-tls/Network/Wai/Handler/WarpTLS.hs−4
@@ -4,7 +4,6 @@
4{-# LANGUAGE RecordWildCards #-}
4{-# LANGUAGE RecordWildCards #-}
5{-# LANGUAGE DeriveDataTypeable #-}
5{-# LANGUAGE DeriveDataTypeable #-}
6{-# LANGUAGE PatternGuards #-}
6{-# LANGUAGE PatternGuards #-}
7−{-# LANGUAGE CPP #-}
8
7
9-- | HTTP over TLS support for Warp via the TLS package.
8-- | HTTP over TLS support for Warp via the TLS package.
10--
9--
@@ -43,9 +42,6 @@ module Network.Wai.Handler.WarpTLS (
43 , DH.generateParams
42 , DH.generateParams
44 ) where
43 ) where
45
44
46−#if __GLASGOW_HASKELL__ < 709
47−import Control.Applicative ((<$>))
48−#endif
49import Control.Applicative ((<|>))
45import Control.Applicative ((<|>))
50import Control.Exception (Exception, throwIO, bracket, finally, handle, fromException, try, IOException, onException, SomeException(..))
46import Control.Exception (Exception, throwIO, bracket, finally, handle, fromException, try, IOException, onException, SomeException(..))
51import qualified Control.Exception as E
47import qualified Control.Exception as E
warp-tls/warp-tls.cabal+1−1
@@ -18,7 +18,7 @@ description: SSLv1 and SSLv2 are obsoleted by IETF.
18extra-source-files: ChangeLog.md README.md
18extra-source-files: ChangeLog.md README.md
19
19
20Library
20Library
21− Build-Depends: base >= 4 && < 5
21+ Build-Depends: base >= 4.8 && < 5
22 , bytestring >= 0.9
22 , bytestring >= 0.9
23 , wai >= 3.2 && < 3.3
23 , wai >= 3.2 && < 3.3
24 , warp >= 3.2.10 && < 3.3
24 , warp >= 3.2.10 && < 3.3
warp/Network/Wai/Handler/Warp/Conduit.hs−3
@@ -7,9 +7,6 @@ import Control.Monad (when, unless)
7import Data.ByteString (ByteString)
7import Data.ByteString (ByteString)
8import qualified Data.ByteString as S
8import qualified Data.ByteString as S
9import qualified Data.IORef as I
9import qualified Data.IORef as I
10−#if __GLASGOW_HASKELL__ < 709
11−import Data.Word (Word)
12−#endif
13import Data.Word (Word8)
10import Data.Word (Word8)
14import Network.Wai.Handler.Warp.Types
11import Network.Wai.Handler.Warp.Types
15
12
warp/Network/Wai/Handler/Warp/Counter.hs−3
@@ -8,9 +8,6 @@ module Network.Wai.Handler.Warp.Counter (
8 , decrease
8 , decrease
9 ) where
9 ) where
10
10
11−#if __GLASGOW_HASKELL__ < 709
12−import Control.Applicative ((<$>))
13−#endif
14import Control.Concurrent.STM
11import Control.Concurrent.STM
15import Control.Monad (unless)
12import Control.Monad (unless)
16
13
warp/Network/Wai/Handler/Warp/Date.hs−3
@@ -5,9 +5,6 @@ module Network.Wai.Handler.Warp.Date (
5 , GMTDate
5 , GMTDate
6 ) where
6 ) where
7
7
8−#if __GLASGOW_HASKELL__ < 709
9−import Control.Applicative
10−#endif
11import Control.AutoUpdate (defaultUpdateSettings, updateAction, mkAutoUpdate)
8import Control.AutoUpdate (defaultUpdateSettings, updateAction, mkAutoUpdate)
12import Data.ByteString.Char8
9import Data.ByteString.Char8
13import Network.HTTP.Date
10import Network.HTTP.Date
warp/Network/Wai/Handler/Warp/FdCache.hs+2−5
@@ -14,13 +14,10 @@ module Network.Wai.Handler.Warp.FdCache (
14 ) where
14 ) where
15
15
16#ifndef WINDOWS
16#ifndef WINDOWS
17−#if __GLASGOW_HASKELL__ < 709
18−import Control.Applicative ((<$>), (<*>))
19−#endif
20import Control.Exception (bracket)
17import Control.Exception (bracket)
21−import Network.Wai.Handler.Warp.IORef
22−import Network.Wai.Handler.Warp.MultiMap
23import Control.Reaper
18import Control.Reaper
19+import Data.IORef
20+import Network.Wai.Handler.Warp.MultiMap
24import System.Posix.IO (openFd, OpenFileFlags(..), defaultFileFlags, OpenMode(ReadOnly), closeFd, FdOption(CloseOnExec), setFdOption)
21import System.Posix.IO (openFd, OpenFileFlags(..), defaultFileFlags, OpenMode(ReadOnly), closeFd, FdOption(CloseOnExec), setFdOption)
25#endif
22#endif
26import System.Posix.Types (Fd)
23import System.Posix.Types (Fd)
warp/Network/Wai/Handler/Warp/HTTP2/Manager.hs+2−5
@@ -13,16 +13,13 @@ module Network.Wai.Handler.Warp.HTTP2.Manager (
13 , deleteMyId
13 , deleteMyId
14 ) where
14 ) where
15
15
16−#if __GLASGOW_HASKELL__ < 709
17−import Control.Applicative
18−#endif
19import Control.Concurrent
16import Control.Concurrent
20import Control.Concurrent.STM
17import Control.Concurrent.STM
21import Control.Monad (void)
18import Control.Monad (void)
19+import Data.Foldable
20+import Data.IORef
22import Data.Set (Set)
21import Data.Set (Set)
23import qualified Data.Set as Set
22import qualified Data.Set as Set
24−import Data.Foldable
25−import Network.Wai.Handler.Warp.IORef
26import Network.Wai.Handler.Warp.Settings
23import Network.Wai.Handler.Warp.Settings
27import qualified Network.Wai.Handler.Warp.Timeout as T
24import qualified Network.Wai.Handler.Warp.Timeout as T
28
25
warp/Network/Wai/Handler/Warp/HTTP2/Receiver.hs+1−4
@@ -6,15 +6,13 @@
6
6
7module Network.Wai.Handler.Warp.HTTP2.Receiver (frameReceiver) where
7module Network.Wai.Handler.Warp.HTTP2.Receiver (frameReceiver) where
8
8
9−#if __GLASGOW_HASKELL__ < 709
10−import Control.Applicative
11−#endif
12import Control.Concurrent
9import Control.Concurrent
13import Control.Concurrent.STM
10import Control.Concurrent.STM
14import qualified Control.Exception as E
11import qualified Control.Exception as E
15import Control.Monad (when, unless, void)
12import Control.Monad (when, unless, void)
16import Data.ByteString (ByteString)
13import Data.ByteString (ByteString)
17import qualified Data.ByteString as BS
14import qualified Data.ByteString as BS
15+import Data.IORef
18import Network.HPACK
16import Network.HPACK
19import Network.HPACK.Token
17import Network.HPACK.Token
20import Network.HTTP2
18import Network.HTTP2
@@ -23,7 +21,6 @@ import Network.Wai.Handler.Warp.HTTP2.EncodeFrame
23import Network.Wai.Handler.Warp.HTTP2.HPACK
21import Network.Wai.Handler.Warp.HTTP2.HPACK
24import Network.Wai.Handler.Warp.HTTP2.Request
22import Network.Wai.Handler.Warp.HTTP2.Request
25import Network.Wai.Handler.Warp.HTTP2.Types
23import Network.Wai.Handler.Warp.HTTP2.Types
26−import Network.Wai.Handler.Warp.IORef
27import Network.Wai.Handler.Warp.ReadInt
24import Network.Wai.Handler.Warp.ReadInt
28import Network.Wai.Handler.Warp.Types
25import Network.Wai.Handler.Warp.Types
29
26
warp/Network/Wai/Handler/Warp/HTTP2/Request.hs+1−1
@@ -13,6 +13,7 @@ import Control.Applicative ((<|>))
13import Control.Arrow (first)
13import Control.Arrow (first)
14import Data.ByteString (ByteString)
14import Data.ByteString (ByteString)
15import qualified Data.ByteString.Char8 as B8
15import qualified Data.ByteString.Char8 as B8
16+import Data.IORef
16import Data.Maybe (fromJust)
17import Data.Maybe (fromJust)
17import qualified Data.Vault.Lazy as Vault
18import qualified Data.Vault.Lazy as Vault
18import Network.HPACK
19import Network.HPACK
@@ -22,7 +23,6 @@ import Network.Socket (SockAddr)
22import Network.Wai
23import Network.Wai
23import Network.Wai.Handler.Warp.HTTP2.Types
24import Network.Wai.Handler.Warp.HTTP2.Types
24import Network.Wai.Handler.Warp.HashMap (hashByteString)
25import Network.Wai.Handler.Warp.HashMap (hashByteString)
25−import Network.Wai.Handler.Warp.IORef
26import Network.Wai.Handler.Warp.Request (pauseTimeoutKey, getFileInfoKey)
26import Network.Wai.Handler.Warp.Request (pauseTimeoutKey, getFileInfoKey)
27import qualified Network.Wai.Handler.Warp.Settings as S (Settings, settingsNoParsePath)
27import qualified Network.Wai.Handler.Warp.Settings as S (Settings, settingsNoParsePath)
28import qualified Network.Wai.Handler.Warp.Timeout as Timeout
28import qualified Network.Wai.Handler.Warp.Timeout as Timeout
warp/Network/Wai/Handler/Warp/HTTP2/Sender.hs+1−4
@@ -4,9 +4,6 @@
4
4
5module Network.Wai.Handler.Warp.HTTP2.Sender (frameSender) where
5module Network.Wai.Handler.Warp.HTTP2.Sender (frameSender) where
6
6
7−#if __GLASGOW_HASKELL__ < 709
8−import Control.Applicative
9−#endif
10import Control.Concurrent.STM
7import Control.Concurrent.STM
11import qualified Control.Exception as E
8import qualified Control.Exception as E
12import Control.Monad (void, when)
9import Control.Monad (void, when)
@@ -14,6 +11,7 @@ import Data.Bits
14import qualified Data.ByteString as BS
11import qualified Data.ByteString as BS
15import Data.ByteString.Builder (Builder)
12import Data.ByteString.Builder (Builder)
16import qualified Data.ByteString.Builder.Extra as B
13import qualified Data.ByteString.Builder.Extra as B
14+import Data.IORef
17import Data.Maybe (isNothing)
15import Data.Maybe (isNothing)
18import Data.Word (Word8, Word32)
16import Data.Word (Word8, Word32)
19import Foreign.Ptr (Ptr, plusPtr)
17import Foreign.Ptr (Ptr, plusPtr)
@@ -27,7 +25,6 @@ import Network.Wai.Handler.Warp.HTTP2.EncodeFrame
27import Network.Wai.Handler.Warp.HTTP2.HPACK
25import Network.Wai.Handler.Warp.HTTP2.HPACK
28import Network.Wai.Handler.Warp.HTTP2.Manager (Manager)
26import Network.Wai.Handler.Warp.HTTP2.Manager (Manager)
29import Network.Wai.Handler.Warp.HTTP2.Types
27import Network.Wai.Handler.Warp.HTTP2.Types
30−import Network.Wai.Handler.Warp.IORef
31import qualified Network.Wai.Handler.Warp.Settings as S
28import qualified Network.Wai.Handler.Warp.Settings as S
32import Network.Wai.Handler.Warp.Types
29import Network.Wai.Handler.Warp.Types
33
30
warp/Network/Wai/Handler/Warp/HTTP2/Types.hs+2−5
@@ -4,22 +4,19 @@
4
4
5module Network.Wai.Handler.Warp.HTTP2.Types where
5module Network.Wai.Handler.Warp.HTTP2.Types where
6
6
7−import Data.ByteString.Builder (Builder)
8−#if __GLASGOW_HASKELL__ < 709
9−import Control.Applicative ((<$>),(<*>))
10−#endif
11import Control.Concurrent (forkIO)
7import Control.Concurrent (forkIO)
12import Control.Concurrent.STM
8import Control.Concurrent.STM
13import Control.Exception (SomeException, bracket)
9import Control.Exception (SomeException, bracket)
14import Control.Monad (void, forM_)
10import Control.Monad (void, forM_)
15import Data.ByteString (ByteString)
11import Data.ByteString (ByteString)
16import qualified Data.ByteString as BS
12import qualified Data.ByteString as BS
13+import Data.ByteString.Builder (Builder)
14+import Data.IORef
17import Data.IntMap.Strict (IntMap, IntMap)
15import Data.IntMap.Strict (IntMap, IntMap)
18import qualified Data.IntMap.Strict as M
16import qualified Data.IntMap.Strict as M
19import qualified Network.HTTP.Types as H
17import qualified Network.HTTP.Types as H
20import Network.Wai (Request, FilePart)
18import Network.Wai (Request, FilePart)
21import Network.Wai.Handler.Warp.HTTP2.Manager
19import Network.Wai.Handler.Warp.HTTP2.Manager
22−import Network.Wai.Handler.Warp.IORef
23import Network.Wai.Handler.Warp.Types
20import Network.Wai.Handler.Warp.Types
24
21
25import Network.HTTP2
22import Network.HTTP2
warp/Network/Wai/Handler/Warp/HTTP2/Worker.hs+5−9
@@ -11,30 +11,26 @@ module Network.Wai.Handler.Warp.HTTP2.Worker (
11 , worker
11 , worker
12 ) where
12 ) where
13
13
14−#if __GLASGOW_HASKELL__ < 709
15−import Control.Applicative
16−import Data.Monoid (mempty)
17−#endif
18import Control.Applicative ((<|>))
14import Control.Applicative ((<|>))
19−import Data.Maybe (fromJust)
20import Control.Concurrent.STM
15import Control.Concurrent.STM
21import Control.Exception (SomeException(..), AsyncException(..))
16import Control.Exception (SomeException(..), AsyncException(..))
22import qualified Control.Exception as E
17import qualified Control.Exception as E
23import Control.Monad (when)
18import Control.Monad (when)
24import Data.ByteString.Builder (byteString)
19import Data.ByteString.Builder (byteString)
20+import Data.IORef
21+import Data.Maybe (fromJust)
22+import Network.HPACK
23+import Network.HPACK.Token
25import qualified Network.HTTP.Types as H
24import qualified Network.HTTP.Types as H
26import Network.HTTP2
25import Network.HTTP2
27import Network.HTTP2.Priority
26import Network.HTTP2.Priority
28−import Network.HPACK
29−import Network.HPACK.Token
30import Network.Wai
27import Network.Wai
31import Network.Wai.Handler.Warp.FileInfoCache
28import Network.Wai.Handler.Warp.FileInfoCache
32import Network.Wai.Handler.Warp.HTTP2.EncodeFrame
29import Network.Wai.Handler.Warp.HTTP2.EncodeFrame
33import Network.Wai.Handler.Warp.HTTP2.File
30import Network.Wai.Handler.Warp.HTTP2.File
34import Network.Wai.Handler.Warp.HTTP2.Manager
31import Network.Wai.Handler.Warp.HTTP2.Manager
35−import Network.Wai.Handler.Warp.HTTP2.Types
36import Network.Wai.Handler.Warp.HTTP2.Request
32import Network.Wai.Handler.Warp.HTTP2.Request
37−import Network.Wai.Handler.Warp.IORef
33+import Network.Wai.Handler.Warp.HTTP2.Types
38import qualified Network.Wai.Handler.Warp.Response as R
34import qualified Network.Wai.Handler.Warp.Response as R
39import qualified Network.Wai.Handler.Warp.Settings as S
35import qualified Network.Wai.Handler.Warp.Settings as S
40import qualified Network.Wai.Handler.Warp.Timeout as T
36import qualified Network.Wai.Handler.Warp.Timeout as T
warp/Network/Wai/Handler/Warp/IORef.hsdeleted−26
@@ -1,26 +0,0 @@
1−{-# LANGUAGE CPP #-}
2−
3−#ifndef MIN_VERSION_base
4−#define MIN_VERSION_base(x,y,z) 1
5−#endif
6−
7−module Network.Wai.Handler.Warp.IORef (
8− module Data.IORef
9−#if !MIN_VERSION_base(4,6,0)
10− , atomicModifyIORef'
11−#endif
12− ) where
13−
14−import Data.IORef
15−
16−#if !MIN_VERSION_base(4,6,0)
17−-- | Strict version of 'atomicModifyIORef'. This forces both the value stored
18−-- in the 'IORef' as well as the value returned.
19−atomicModifyIORef' :: IORef a -> (a -> (a,b)) -> IO b
20−atomicModifyIORef' ref f = do
21− c <- atomicModifyIORef ref
22− (\x -> let (a, b) = f x -- Lazy application of "f"
23− in (a, a `seq` b)) -- Lazy application of "seq"
24− -- The following forces "a `seq` b", so it also forces "f x".
25− c `seq` return c
26−#endif
warp/Network/Wai/Handler/Warp/MultiMap.hs−3
@@ -13,9 +13,6 @@ module Network.Wai.Handler.Warp.MultiMap (
13 , merge
13 , merge
14 ) where
14 ) where
15
15
16−#if __GLASGOW_HASKELL__ < 709
17−import Control.Applicative ((<$>))
18−#endif
19import Data.IntMap.Strict (IntMap)
16import Data.IntMap.Strict (IntMap)
20import qualified Data.IntMap.Strict as I
17import qualified Data.IntMap.Strict as I
21import qualified Network.Wai.Handler.Warp.Some as S
18import qualified Network.Wai.Handler.Warp.Some as S
warp/Network/Wai/Handler/Warp/Recv.hs+1−4
@@ -9,12 +9,10 @@ module Network.Wai.Handler.Warp.Recv (
9 , spell
9 , spell
10 ) where
10 ) where
11
11
12−#if __GLASGOW_HASKELL__ < 709
13−import Control.Applicative ((<$>))
14−#endif
15import qualified Control.Exception as E
12import qualified Control.Exception as E
16import qualified Data.ByteString as BS
13import qualified Data.ByteString as BS
17import Data.ByteString.Internal (ByteString(..))
14import Data.ByteString.Internal (ByteString(..))
15+import Data.IORef
18import Data.Word (Word8)
16import Data.Word (Word8)
19import Foreign.C.Error (eAGAIN, getErrno, throwErrno)
17import Foreign.C.Error (eAGAIN, getErrno, throwErrno)
20import Foreign.C.Types
18import Foreign.C.Types
@@ -23,7 +21,6 @@ import Foreign.Ptr (Ptr, castPtr, plusPtr)
23import GHC.Conc (threadWaitRead)
21import GHC.Conc (threadWaitRead)
24import Network.Socket (Socket, fdSocket)
22import Network.Socket (Socket, fdSocket)
25import Network.Wai.Handler.Warp.Buffer
23import Network.Wai.Handler.Warp.Buffer
26−import Network.Wai.Handler.Warp.IORef
27import Network.Wai.Handler.Warp.Types
24import Network.Wai.Handler.Warp.Types
28import System.Posix.Types (Fd(..))
25import System.Posix.Types (Fd(..))
29
26
warp/Network/Wai/Handler/Warp/Response.hs−19
@@ -14,14 +14,7 @@ module Network.Wai.Handler.Warp.Response (
14 , addServer -- testing
14 , addServer -- testing
15 ) where
15 ) where
16
16
17−#ifndef MIN_VERSION_base
18−#define MIN_VERSION_base(x,y,z) 1
19−#endif
20−
21import Blaze.ByteString.Builder.HTTP (chunkedTransferEncoding, chunkedTransferTerminator)
17import Blaze.ByteString.Builder.HTTP (chunkedTransferEncoding, chunkedTransferTerminator)
22−#if __GLASGOW_HASKELL__ < 709
23−import Control.Applicative
24−#endif
25import qualified Control.Exception as E
18import qualified Control.Exception as E
26import Control.Monad (unless, when)
19import Control.Monad (unless, when)
27import Data.Array ((!))
20import Data.Array ((!))
@@ -34,14 +27,7 @@ import qualified Data.CaseInsensitive as CI
34import Data.Function (on)
27import Data.Function (on)
35import Data.List (deleteBy)
28import Data.List (deleteBy)
36import Data.Maybe
29import Data.Maybe
37−#if MIN_VERSION_base(4,5,0)
38−# if __GLASGOW_HASKELL__ < 709
39−import Data.Monoid (mempty)
40−# endif
41import Data.Monoid ((<>))
30import Data.Monoid ((<>))
42−#else
43−import Data.Monoid (mappend, mempty)
44−#endif
45import Data.Streaming.Blaze (newBlazeRecv, reuseBufferStrategy)
31import Data.Streaming.Blaze (newBlazeRecv, reuseBufferStrategy)
46import Data.Version (showVersion)
32import Data.Version (showVersion)
47import Data.Word8 (_cr, _lf)
33import Data.Word8 (_cr, _lf)
@@ -60,11 +46,6 @@ import Network.Wai.Handler.Warp.Types
60import Network.Wai.Internal
46import Network.Wai.Internal
61import qualified Paths_warp
47import qualified Paths_warp
62
48
63−#if !MIN_VERSION_base(4,5,0)
64−(<>) :: Monoid m => m -> m -> m
65−(<>) = mappend
66−#endif
67−
68-- $setup
49-- $setup
69-- >>> :set -XOverloadedStrings
50-- >>> :set -XOverloadedStrings
70
51
warp/Network/Wai/Handler/Warp/Run.hs+1−10
@@ -9,9 +9,6 @@
9
9
10module Network.Wai.Handler.Warp.Run where
10module Network.Wai.Handler.Warp.Run where
11
11
12−#if __GLASGOW_HASKELL__ < 709
13−import Control.Applicative ((<$>))
14−#endif
15import Control.Arrow (first)
12import Control.Arrow (first)
16import qualified Control.Concurrent as Conc (yield)
13import qualified Control.Concurrent as Conc (yield)
17import Control.Exception as E
14import Control.Exception as E
@@ -20,7 +17,7 @@ import Data.ByteString (ByteString)
20import qualified Data.ByteString as S
17import qualified Data.ByteString as S
21import Data.Char (chr)
18import Data.Char (chr)
22import "iproute" Data.IP (toHostAddress, toHostAddress6)
19import "iproute" Data.IP (toHostAddress, toHostAddress6)
23−import Data.IORef (IORef, newIORef, readIORef, writeIORef)
20+import Data.IORef (IORef, newIORef, readIORef, writeIORef, atomicModifyIORef')
24import Data.Streaming.Network (bindPortTCP)
21import Data.Streaming.Network (bindPortTCP)
25import Foreign.C.Error (Errno(..), eCONNABORTED)
22import Foreign.C.Error (Errno(..), eCONNABORTED)
26import GHC.IO.Exception (IOException(..))
23import GHC.IO.Exception (IOException(..))
@@ -35,7 +32,6 @@ import qualified Network.Wai.Handler.Warp.FdCache as F
35import qualified Network.Wai.Handler.Warp.FileInfoCache as I
32import qualified Network.Wai.Handler.Warp.FileInfoCache as I
36import Network.Wai.Handler.Warp.HTTP2 (http2, isHTTP2)
33import Network.Wai.Handler.Warp.HTTP2 (http2, isHTTP2)
37import Network.Wai.Handler.Warp.Header
34import Network.Wai.Handler.Warp.Header
38−import Network.Wai.Handler.Warp.IORef
39import Network.Wai.Handler.Warp.ReadInt
35import Network.Wai.Handler.Warp.ReadInt
40import Network.Wai.Handler.Warp.Recv
36import Network.Wai.Handler.Warp.Recv
41import Network.Wai.Handler.Warp.Request
37import Network.Wai.Handler.Warp.Request
@@ -72,11 +68,6 @@ socketConnection s = do
72 , connBufferSize = bufferSize
68 , connBufferSize = bufferSize
73 }
69 }
74
70
75−#if __GLASGOW_HASKELL__ < 702
76−allowInterrupt :: IO ()
77−allowInterrupt = unblock $ return ()
78−#endif
79−
80-- | Run an 'Application' on the given port.
71-- | Run an 'Application' on the given port.
81-- This calls 'runSettings' with 'defaultSettings'.
72-- This calls 'runSettings' with 'defaultSettings'.
82run :: Port -> Application -> IO ()
73run :: Port -> Application -> IO ()
warp/Network/Wai/Handler/Warp/Settings.hs−3
@@ -10,9 +10,6 @@ import Control.Monad (when, void)
10import Data.ByteString (ByteString)
10import Data.ByteString (ByteString)
11import qualified Data.ByteString.Char8 as S8
11import qualified Data.ByteString.Char8 as S8
12import Data.ByteString.Builder (byteString)
12import Data.ByteString.Builder (byteString)
13−#if __GLASGOW_HASKELL__ < 709
14−import Data.Monoid (mappend)
15−#endif
16import Data.Streaming.Network (HostPreference)
13import Data.Streaming.Network (HostPreference)
17import qualified Data.Text as T
14import qualified Data.Text as T
18import qualified Data.Text.IO as TIO
15import qualified Data.Text.IO as TIO
warp/Network/Wai/Handler/Warp/Timeout.hs+2−4
@@ -27,8 +27,8 @@ import Control.Concurrent (myThreadId)
27import qualified Control.Exception as E
27import qualified Control.Exception as E
28import Control.Reaper
28import Control.Reaper
29import Data.Typeable (Typeable)
29import Data.Typeable (Typeable)
30−import Network.Wai.Handler.Warp.IORef (IORef)
30+import Data.IORef (IORef)
31−import qualified Network.Wai.Handler.Warp.IORef as I
31+import qualified Data.IORef as I
32
32
33----------------------------------------------------------------
33----------------------------------------------------------------
34
34
@@ -112,10 +112,8 @@ registerKillThread m onTimeout = do
112data TimeoutThread = TimeoutThread
112data TimeoutThread = TimeoutThread
113 deriving Typeable
113 deriving Typeable
114instance E.Exception TimeoutThread where
114instance E.Exception TimeoutThread where
115−#if MIN_VERSION_base(4,7,0)
116 toException = E.asyncExceptionToException
115 toException = E.asyncExceptionToException
117 fromException = E.asyncExceptionFromException
116 fromException = E.asyncExceptionFromException
118−#endif
119instance Show TimeoutThread where
117instance Show TimeoutThread where
120 show TimeoutThread = "Thread killed by Warp's timeout reaper"
118 show TimeoutThread = "Thread killed by Warp's timeout reaper"
121
119
warp/warp.cabal+4−7
@@ -33,13 +33,12 @@ Flag warp-debug
33 Default: False
33 Default: False
34
34
35Library
35Library
36− Build-Depends: base >= 3 && < 5
36+ Build-Depends: base >= 4.8 && < 5
37 , array
37 , array
38 , async
38 , async
39 , auto-update >= 0.1.3 && < 0.2
39 , auto-update >= 0.1.3 && < 0.2
40 , blaze-builder >= 0.4
40 , blaze-builder >= 0.4
41 , bytestring >= 0.9.1.4
41 , bytestring >= 0.9.1.4
42− , bytestring-builder
43 , case-insensitive >= 0.2
42 , case-insensitive >= 0.2
44 , containers
43 , containers
45 , ghc-prim
44 , ghc-prim
@@ -83,7 +82,6 @@ Library
83 Network.Wai.Handler.Warp.HTTP2.Worker
82 Network.Wai.Handler.Warp.HTTP2.Worker
84 Network.Wai.Handler.Warp.Header
83 Network.Wai.Handler.Warp.Header
85 Network.Wai.Handler.Warp.IO
84 Network.Wai.Handler.Warp.IO
86− Network.Wai.Handler.Warp.IORef
87 Network.Wai.Handler.Warp.PackInt
85 Network.Wai.Handler.Warp.PackInt
88 Network.Wai.Handler.Warp.ReadInt
86 Network.Wai.Handler.Warp.ReadInt
89 Network.Wai.Handler.Warp.Recv
87 Network.Wai.Handler.Warp.Recv
@@ -118,7 +116,7 @@ Test-Suite doctest
118 HS-Source-Dirs: test
116 HS-Source-Dirs: test
119 Ghc-Options: -threaded -Wall
117 Ghc-Options: -threaded -Wall
120 Main-Is: doctests.hs
118 Main-Is: doctests.hs
121− Build-Depends: base
119+ Build-Depends: base >= 4.8 && < 5
122 , doctest >= 0.10.1
120 , doctest >= 0.10.1
123
121
124Test-Suite spec
122Test-Suite spec
@@ -140,12 +138,11 @@ Test-Suite spec
140 Type: exitcode-stdio-1.0
138 Type: exitcode-stdio-1.0
141
139
142 Ghc-Options: -Wall
140 Ghc-Options: -Wall
143− Build-Depends: base >= 4 && < 5
141+ Build-Depends: base >= 4.8 && < 5
144 , array
142 , array
145 , auto-update
143 , auto-update
146 , blaze-builder >= 0.4
144 , blaze-builder >= 0.4
147 , bytestring >= 0.9.1.4
145 , bytestring >= 0.9.1.4
148− , bytestring-builder
149 , case-insensitive >= 0.2
146 , case-insensitive >= 0.2
150 , ghc-prim
147 , ghc-prim
151 , HTTP
148 , HTTP
@@ -185,7 +182,7 @@ Benchmark parser
185 Type: exitcode-stdio-1.0
182 Type: exitcode-stdio-1.0
186 Main-Is: Parser.hs
183 Main-Is: Parser.hs
187 HS-Source-Dirs: bench .
184 HS-Source-Dirs: bench .
188− Build-Depends: base
185+ Build-Depends: base >= 4.8 && < 5
189 , auto-update
186 , auto-update
190 , bytestring
187 , bytestring
191 , containers
188 , containers