Hello community,

here is the log from the commit of package ghc-warp for openSUSE:Factory 
checked in at 2017-06-04 01:59:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-warp (Old)
 and      /work/SRC/openSUSE:Factory/.ghc-warp.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc-warp"

Sun Jun  4 01:59:14 2017 rev:13 rq:499739 version:3.2.12

Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-warp/ghc-warp.changes        2017-05-10 
20:50:03.814690732 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-warp.new/ghc-warp.changes   2017-06-04 
01:59:16.604881851 +0200
@@ -1,0 +2,5 @@
+Thu May 18 09:52:25 UTC 2017 - [email protected]
+
+- Update to version 3.2.12 with cabal2obs.
+
+-------------------------------------------------------------------

Old:
----
  warp-3.2.11.2.tar.gz

New:
----
  warp-3.2.12.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ghc-warp.spec ++++++
--- /var/tmp/diff_new_pack.3PFi80/_old  2017-06-04 01:59:17.732722517 +0200
+++ /var/tmp/diff_new_pack.3PFi80/_new  2017-06-04 01:59:17.736721952 +0200
@@ -19,7 +19,7 @@
 %global pkg_name warp
 %bcond_with tests
 Name:           ghc-%{pkg_name}
-Version:        3.2.11.2
+Version:        3.2.12
 Release:        0
 Summary:        A fast, light-weight web server for WAI applications
 License:        MIT

++++++ warp-3.2.11.2.tar.gz -> warp-3.2.12.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/warp-3.2.11.2/ChangeLog.md 
new/warp-3.2.12/ChangeLog.md
--- old/warp-3.2.11.2/ChangeLog.md      2017-04-13 09:50:05.000000000 +0200
+++ new/warp-3.2.12/ChangeLog.md        2017-05-11 05:41:59.000000000 +0200
@@ -1,3 +1,7 @@
+## 3.2.12
+
+* If an empty string is set by setServerName, the Server header is not 
included in response headers [#619](https://github.com/yesodweb/wai/issues/619)
+
 ## 3.2.11.2
 
 * Don't throw exceptions when closing a keep-alive connection
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/warp-3.2.11.2/Network/Wai/Handler/Warp/HTTP2/HPACK.hs 
new/warp-3.2.12/Network/Wai/Handler/Warp/HTTP2/HPACK.hs
--- old/warp-3.2.11.2/Network/Wai/Handler/Warp/HTTP2/HPACK.hs   2017-02-23 
12:15:39.000000000 +0100
+++ new/warp-3.2.12/Network/Wai/Handler/Warp/HTTP2/HPACK.hs     2017-05-11 
05:41:59.000000000 +0200
@@ -7,6 +7,7 @@
   , hpackDecodeHeader
   , just
   , addNecessaryHeaders
+  , addHeader -- testing
   ) where
 
 import qualified Control.Exception as E
@@ -27,9 +28,12 @@
 
 {-# INLINE addHeader #-}
 addHeader :: Token -> ByteString -> ValueTable -> TokenHeaderList -> 
TokenHeaderList
+addHeader t "" tbl ths = case getHeaderValue t tbl of
+    Nothing -> ths
+    _       -> filter ((/= tokenServer) . fst) ths
 addHeader t v tbl ths = case getHeaderValue t tbl of
     Nothing -> (t,v) : ths
-    Just _  -> ths
+    _       -> ths
 
 addNecessaryHeaders :: Context
                     -> Rspn
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/warp-3.2.11.2/Network/Wai/Handler/Warp/Response.hs 
new/warp-3.2.12/Network/Wai/Handler/Warp/Response.hs
--- old/warp-3.2.11.2/Network/Wai/Handler/Warp/Response.hs      2016-11-20 
16:19:24.000000000 +0100
+++ new/warp-3.2.12/Network/Wai/Handler/Warp/Response.hs        2017-05-11 
05:41:59.000000000 +0200
@@ -11,6 +11,7 @@
   , warpVersion
   , hasBody
   , replaceHeader
+  , addServer -- testing
   ) where
 
 #ifndef MIN_VERSION_base
@@ -429,7 +430,11 @@
 warpVersion :: String
 warpVersion = showVersion Paths_warp.version
 
+{-# INLINE addServer #-}
 addServer :: HeaderValue -> IndexedHeader -> H.ResponseHeaders -> 
H.ResponseHeaders
+addServer "" rspidxhdr hdrs = case rspidxhdr ! fromEnum ResServer of
+    Nothing -> hdrs
+    _       -> filter ((/= H.hServer) . fst) hdrs
 addServer serverName rspidxhdr hdrs = case rspidxhdr ! fromEnum ResServer of
     Nothing -> (H.hServer, serverName) : hdrs
     _       -> hdrs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/warp-3.2.11.2/Network/Wai/Handler/Warp.hs 
new/warp-3.2.12/Network/Wai/Handler/Warp.hs
--- old/warp-3.2.11.2/Network/Wai/Handler/Warp.hs       2017-01-17 
12:23:30.000000000 +0100
+++ new/warp-3.2.12/Network/Wai/Handler/Warp.hs 2017-05-11 05:41:59.000000000 
+0200
@@ -302,7 +302,10 @@
 setInstallShutdownHandler :: (IO () -> IO ()) -> Settings -> Settings
 setInstallShutdownHandler x y = y { settingsInstallShutdownHandler = x }
 
--- | Default server name if application does not set one.
+-- | Default server name to be sent as the \"Server:\" header
+--   if an application does not set one.
+--   If an empty string is set, the \"Server:\" header is not sent.
+--   This is true even if an application set one.
 --
 -- Since 3.0.2
 setServerName :: ByteString -> Settings -> Settings
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/warp-3.2.11.2/test/ResponseHeaderSpec.hs 
new/warp-3.2.12/test/ResponseHeaderSpec.hs
--- old/warp-3.2.11.2/test/ResponseHeaderSpec.hs        2015-11-09 
03:12:10.000000000 +0100
+++ new/warp-3.2.12/test/ResponseHeaderSpec.hs  2017-05-11 05:41:59.000000000 
+0200
@@ -5,15 +5,63 @@
 import Data.ByteString
 import qualified Network.HTTP.Types as H
 import Network.Wai.Handler.Warp.ResponseHeader
+import Network.Wai.Handler.Warp.Response
+import Network.Wai.Handler.Warp.Header
+import Network.Wai.Handler.Warp.HTTP2.HPACK
+import Network.HPACK
+import Network.HPACK.Token
 import Test.Hspec
 
 main :: IO ()
 main = hspec spec
 
 spec :: Spec
-spec = describe "composeHeader" $ do
-    it "composes a HTTP header" $
-        composeHeader H.http11 H.ok200 headers `shouldReturn` composedHeader
+spec = do
+    describe "composeHeader" $ do
+        it "composes a HTTP header" $
+            composeHeader H.http11 H.ok200 headers `shouldReturn` 
composedHeader
+    describe "addServer" $ do
+        it "adds Server if not exist" $ do
+            let hdrs = []
+                rspidxhdr = indexResponseHeader hdrs
+            addServer "MyServer" rspidxhdr hdrs `shouldBe` 
[("Server","MyServer")]
+        it "does not add Server if exists" $ do
+            let hdrs = [("Server","MyServer")]
+                rspidxhdr = indexResponseHeader hdrs
+            addServer "MyServer2" rspidxhdr hdrs `shouldBe` hdrs
+        it "does not add Server if empty" $ do
+            let hdrs = []
+                rspidxhdr = indexResponseHeader hdrs
+            addServer "" rspidxhdr hdrs `shouldBe` hdrs
+        it "deletes Server " $ do
+            let hdrs = [("Server","MyServer")]
+                rspidxhdr = indexResponseHeader hdrs
+            addServer "" rspidxhdr hdrs `shouldBe` []
+    describe "addHeader" $ do
+        it "adds Server if not exist" $ do
+            let v = "MyServer"
+                hdrs = []
+                hdrs1 = [("Server",v)]
+            (thl, vt) <- toHeaderTable hdrs
+            (thl1, _) <- toHeaderTable hdrs1
+            addHeader tokenServer v vt thl `shouldBe` thl1
+        it "does not add Server if exists" $ do
+            let v = "MyServer2"
+                hdrs = [("Server","MyServer")]
+            (thl, vt) <- toHeaderTable hdrs
+            addHeader tokenServer v vt thl `shouldBe` thl
+        it "does not add Server if empty" $ do
+            let v = ""
+                hdrs = []
+            (thl, vt) <- toHeaderTable hdrs
+            addHeader tokenServer v vt thl `shouldBe` thl
+        it "deletes Server " $ do
+            let v = ""
+                hdrs = [("Server","MyServer")]
+                hdrs1 = []
+            (thl, vt) <- toHeaderTable hdrs
+            (thl1, _) <- toHeaderTable hdrs1
+            addHeader tokenServer v vt thl `shouldBe` thl1
 
 headers :: H.ResponseHeaders
 headers = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/warp-3.2.11.2/warp.cabal new/warp-3.2.12/warp.cabal
--- old/warp-3.2.11.2/warp.cabal        2017-04-13 09:49:31.000000000 +0200
+++ new/warp-3.2.12/warp.cabal  2017-05-11 05:41:59.000000000 +0200
@@ -1,5 +1,5 @@
 Name:                warp
-Version:             3.2.11.2
+Version:             3.2.12
 Synopsis:            A fast, light-weight web server for WAI applications.
 License:             MIT
 License-file:        LICENSE


Reply via email to