warp 3.4.8 → 3.4.9
raw patch · 6 files changed
+46/−15 lines, 6 filesdep ~async
Dependency ranges changed: async
Files
- ChangeLog.md +5/−0
- Network/Wai/Handler/Warp.hs +0/−1
- Network/Wai/Handler/Warp/Internal.hs +1/−0
- Network/Wai/Handler/Warp/Response.hs +1/−6
- Network/Wai/Handler/Warp/Settings.hs +15/−3
- warp.cabal +24/−5
ChangeLog.md view
@@ -1,5 +1,10 @@ # ChangeLog for warp +## 3.4.9++* New flag `include-warp-version` can be disabled to remove dependency on `Paths_warp`.+ [#1044](https://github.com/yesodweb/wai/pull/1044)+ ## 3.4.8 * Label the internal hack thread on Windows used to make socket
Network/Wai/Handler/Warp.hs view
@@ -159,7 +159,6 @@ import Network.Wai.Handler.Warp.HTTP2.Types import Network.Wai.Handler.Warp.Imports import Network.Wai.Handler.Warp.Request-import Network.Wai.Handler.Warp.Response (warpVersion) import Network.Wai.Handler.Warp.Run import Network.Wai.Handler.Warp.Settings import Network.Wai.Handler.Warp.Types hiding (getFileInfo)
Network/Wai/Handler/Warp/Internal.hs view
@@ -107,3 +107,4 @@ import Network.Wai.Handler.Warp.Settings import Network.Wai.Handler.Warp.Types import Network.Wai.Handler.Warp.Windows+
Network/Wai/Handler/Warp/Response.hs view
@@ -7,6 +7,7 @@ module Network.Wai.Handler.Warp.Response ( sendResponse, sanitizeHeaderValue, -- for testing+ -- Provided here for backwards compatibility. warpVersion, hasBody, replaceHeader,@@ -31,13 +32,11 @@ newByteStringBuilderRecv, reuseBufferStrategy, )-import Data.Version (showVersion) import Data.Word8 (_cr, _lf, _space, _tab) import qualified Network.HTTP.Types as H import qualified Network.HTTP.Types.Header as H import Network.Wai import Network.Wai.Internal-import qualified Paths_warp import qualified System.TimeManager as T import Network.Wai.Handler.Warp.Buffer (toBuilderBuffer)@@ -478,10 +477,6 @@ Just _ -> return hdrs -------------------------------------------------------------------- | The version of Warp.-warpVersion :: String-warpVersion = showVersion Paths_warp.version {-# INLINE addServer #-} addServer
Network/Wai/Handler/Warp/Settings.hs view
@@ -15,14 +15,12 @@ import Data.Streaming.Network (HostPreference) import qualified Data.Text as T import qualified Data.Text.IO as TIO-import Data.Version (showVersion) import GHC.IO (IO (IO), unsafeUnmask) import GHC.IO.Exception (IOErrorType (..)) import GHC.Prim (fork#) import qualified Network.HTTP.Types as H import Network.Socket (SockAddr, Socket, accept) import Network.Wai-import qualified Paths_warp import System.IO (stderr) import System.IO.Error (ioeGetErrorType) import System.TimeManager@@ -33,6 +31,11 @@ import Network.Wai.Handler.Warp.Windows (windowsThreadBlockHack) #endif +#ifdef INCLUDE_WARP_VERSION+import Data.Version (showVersion)+import qualified Paths_warp+#endif+ -- | Various Warp server settings. This is purposely kept as an abstract data -- type so that new settings can be added without breaking backwards -- compatibility. In order to create a 'Settings' value, use 'defaultSettings'@@ -206,7 +209,7 @@ , settingsAccept = defaultAccept , settingsNoParsePath = False , settingsInstallShutdownHandler = const $ return ()- , settingsServerName = C8.pack $ "Warp/" ++ showVersion Paths_warp.version+ , settingsServerName = C8.pack $ "Warp/" ++ warpVersion , settingsMaximumBodyFlush = Just 8192 , settingsProxyProtocol = ProxyProtocolNone , settingsSlowlorisSize = 2048@@ -317,4 +320,13 @@ windowsThreadBlockHack . accept #else accept+#endif++-- | The version of Warp.+warpVersion :: String+warpVersion =+#ifdef INCLUDE_WARP_VERSION+ showVersion Paths_warp.version+#else+ "unknown" #endif
warp.cabal view
@@ -1,6 +1,6 @@ cabal-version: >=1.10 name: warp-version: 3.4.8+version: 3.4.9 license: MIT license-file: LICENSE maintainer: michael@snoyman.com@@ -34,6 +34,16 @@ flag allow-sendfilefd description: Allow use of sendfileFd (not available on GNU/kFreeBSD) +flag include-warp-version+ description:+ Exposes the version in Network.Wai.Handler.Warp.warpVersion.+ This adds a dependency on Paths_warp so application binaries may+ reference subpaths of GHC. For nix users this may result in binaries+ with a large transitive runtime dependency closure that includes GHC+ itself.+ default: True+ manual: True+ flag warp-debug description: print debug output. not suitable for production default: False@@ -78,15 +88,17 @@ Network.Wai.Handler.Warp.Types Network.Wai.Handler.Warp.Windows Network.Wai.Handler.Warp.WithApplication- Paths_warp + if flag(include-warp-version)+ other-modules: Paths_warp+ default-language: Haskell2010 ghc-options: -Wall build-depends: base >=4.12 && <5, array, auto-update >=0.2.2 && <0.3,- async,+ async >= 2, bsb-http-chunked <0.1, bytestring >=0.9.1.4, case-insensitive >=0.2,@@ -140,6 +152,9 @@ if impl(ghc >=8) default-extensions: Strict StrictData + if flag(include-warp-version)+ cpp-options: -DINCLUDE_WARP_VERSION+ test-suite doctest type: exitcode-stdio-1.0 main-is: doctests.hs@@ -208,8 +223,10 @@ Network.Wai.Handler.Warp.Types Network.Wai.Handler.Warp.Windows Network.Wai.Handler.Warp.WithApplication- Paths_warp + if flag(include-warp-version)+ other-modules: Paths_warp+ default-language: Haskell2010 ghc-options: -Wall -threaded build-depends:@@ -285,7 +302,9 @@ Network.Wai.Handler.Warp.RequestHeader Network.Wai.Handler.Warp.Settings Network.Wai.Handler.Warp.Types- Paths_warp++ if flag(include-warp-version)+ other-modules: Paths_warp default-language: Haskell2010 build-depends: