Hello community,

here is the log from the commit of package ghc-attoparsec for 
openSUSE:Leap:15.2 checked in at 2020-02-19 18:37:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Leap:15.2/ghc-attoparsec (Old)
 and      /work/SRC/openSUSE:Leap:15.2/.ghc-attoparsec.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc-attoparsec"

Wed Feb 19 18:37:44 2020 rev:11 rq:771228 version:0.13.2.3

Changes:
--------
--- /work/SRC/openSUSE:Leap:15.2/ghc-attoparsec/ghc-attoparsec.changes  
2020-01-15 15:00:39.633754871 +0100
+++ 
/work/SRC/openSUSE:Leap:15.2/.ghc-attoparsec.new.26092/ghc-attoparsec.changes   
    2020-02-19 18:37:45.553861232 +0100
@@ -1,0 +2,17 @@
+Fri Nov  8 16:13:14 UTC 2019 - Peter Simons <[email protected]>
+
+- Drop obsolete group attributes.
+
+-------------------------------------------------------------------
+Sun Sep  1 02:02:19 UTC 2019 - [email protected]
+
+- Update attoparsec to version 0.13.2.3.
+  Upstream has not updated the file "changelog.md" since the last
+  release.
+
+-------------------------------------------------------------------
+Tue Jun 11 14:29:08 UTC 2019 - Peter Simons <[email protected]>
+
+- Update Cabal file for more accurate build dependencies.
+
+-------------------------------------------------------------------

Old:
----
  attoparsec-0.13.2.2.tar.gz

New:
----
  attoparsec-0.13.2.3.tar.gz

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

Other differences:
------------------
++++++ ghc-attoparsec.spec ++++++
--- /var/tmp/diff_new_pack.hxWZAJ/_old  2020-02-19 18:37:46.045862261 +0100
+++ /var/tmp/diff_new_pack.hxWZAJ/_new  2020-02-19 18:37:46.049862269 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package ghc-attoparsec
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,14 +19,13 @@
 %global pkg_name attoparsec
 %bcond_with tests
 Name:           ghc-%{pkg_name}
-Version:        0.13.2.2
+Version:        0.13.2.3
 Release:        0
 Summary:        Fast combinator parsing for bytestrings and text
 License:        BSD-3-Clause
-Group:          Development/Libraries/Haskell
 URL:            https://hackage.haskell.org/package/%{pkg_name}
 Source0:        
https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz
-Source1:        
https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/2.cabal#/%{pkg_name}.cabal
+Source1:        
https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal
 BuildRequires:  ghc-Cabal-devel
 BuildRequires:  ghc-array-devel
 BuildRequires:  ghc-bytestring-devel
@@ -50,7 +49,6 @@
 
 %package devel
 Summary:        Haskell %{pkg_name} library development files
-Group:          Development/Libraries/Haskell
 Requires:       %{name} = %{version}-%{release}
 Requires:       ghc-compiler = %{ghc_version}
 Requires(post): ghc-compiler = %{ghc_version}

++++++ attoparsec-0.13.2.2.tar.gz -> attoparsec-0.13.2.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/attoparsec-0.13.2.2/Data/Attoparsec/Internal/Types.hs 
new/attoparsec-0.13.2.3/Data/Attoparsec/Internal/Types.hs
--- old/attoparsec-0.13.2.2/Data/Attoparsec/Internal/Types.hs   2018-01-12 
23:56:55.000000000 +0100
+++ new/attoparsec-0.13.2.3/Data/Attoparsec/Internal/Types.hs   2019-08-31 
11:36:08.000000000 +0200
@@ -1,4 +1,4 @@
-{-# LANGUAGE BangPatterns, GeneralizedNewtypeDeriving, OverloadedStrings,
+{-# LANGUAGE CPP, BangPatterns, GeneralizedNewtypeDeriving, OverloadedStrings,
     Rank2Types, RecordWildCards, TypeFamilies #-}
 -- |
 -- Module      :  Data.Attoparsec.Internal.Types
@@ -39,7 +39,7 @@
 import Data.Text (Text)
 import qualified Data.Text as Text
 import Data.Text.Unsafe (Iter(..))
-import Prelude hiding (getChar, succ)
+import Prelude hiding (succ)
 import qualified Data.Attoparsec.ByteString.Buffer as B
 import qualified Data.Attoparsec.Text.Buffer as T
 
@@ -136,8 +136,10 @@
     mempty  = Incomplete
 
 instance Monad (Parser i) where
+#if !(MIN_VERSION_base(4,13,0))
     fail = Fail.fail
     {-# INLINE fail #-}
+#endif
 
     return = App.pure
     {-# INLINE return #-}
@@ -207,8 +209,9 @@
     {-# INLINE (<|>) #-}
 
     many v = many_v
-        where many_v = some_v <|> pure []
-              some_v = (:) App.<$> v <*> many_v
+      where
+        many_v = some_v <|> pure []
+        some_v = (:) <$> v <*> many_v
     {-# INLINE many #-}
 
     some v = some_v
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/attoparsec-0.13.2.2/Data/Attoparsec/Zepto.hs 
new/attoparsec-0.13.2.3/Data/Attoparsec/Zepto.hs
--- old/attoparsec-0.13.2.2/Data/Attoparsec/Zepto.hs    2018-01-12 
23:56:55.000000000 +0100
+++ new/attoparsec-0.13.2.3/Data/Attoparsec/Zepto.hs    2019-08-31 
11:36:08.000000000 +0200
@@ -92,8 +92,10 @@
         Fail err -> return (Fail err)
     {-# INLINE (>>=) #-}
 
+#if !(MIN_VERSION_base(4,13,0))
     fail = Fail.fail
     {-# INLINE fail #-}
+#endif
 
 instance Monad m => Fail.MonadFail (ZeptoT m) where
     fail msg = Parser $ \_ -> return (Fail msg)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/attoparsec-0.13.2.2/attoparsec.cabal 
new/attoparsec-0.13.2.3/attoparsec.cabal
--- old/attoparsec-0.13.2.2/attoparsec.cabal    2018-01-12 23:56:55.000000000 
+0100
+++ new/attoparsec-0.13.2.3/attoparsec.cabal    2019-08-31 11:36:08.000000000 
+0200
@@ -1,12 +1,12 @@
 name:            attoparsec
-version:         0.13.2.2
+version:         0.13.2.3
 license:         BSD3
 license-file:    LICENSE
 category:        Text, Parsing
 author:          Bryan O'Sullivan <[email protected]>
 maintainer:      Bryan O'Sullivan <[email protected]>, Ben Gamari 
<[email protected]>
 stability:       experimental
-tested-with:     GHC == 7.0.4, GHC == 7.2.2, GHC == 7.4.2, GHC ==7.6.3, GHC 
==7.8.4, GHC ==7.10.3, GHC ==8.0.2, GHC ==8.2.2
+tested-with:     GHC == 7.0.4, GHC == 7.2.2, GHC == 7.4.2, GHC ==7.6.3, GHC 
==7.8.4, GHC ==7.10.3, GHC ==8.0.2, GHC ==8.2.2, GHC==8.4.4, GHC==8.6.5, 
GHC==8.8.1
 synopsis:        Fast combinator parsing for bytestrings and text
 cabal-version:   >= 1.8
 homepage:        https://github.com/bos/attoparsec
@@ -39,7 +39,7 @@
 
 library
   build-depends: array,
-                 base >= 4.2 && < 5,
+                 base >= 4.3 && < 5,
                  bytestring,
                  containers,
                  deepseq,
@@ -124,10 +124,10 @@
 
   build-depends:
     array,
-    base >= 4 && < 5,
+    base,
     bytestring,
     deepseq >= 1.1,
-    QuickCheck >= 2.7 && < 2.10,
+    QuickCheck >= 2.13.2 && < 2.14,
     quickcheck-unicode,
     scientific,
     tasty >= 0.11,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/attoparsec-0.13.2.2/benchmarks/HeadersByteString/Atto.hs 
new/attoparsec-0.13.2.3/benchmarks/HeadersByteString/Atto.hs
--- old/attoparsec-0.13.2.2/benchmarks/HeadersByteString/Atto.hs        
2018-01-12 23:56:55.000000000 +0100
+++ new/attoparsec-0.13.2.3/benchmarks/HeadersByteString/Atto.hs        
2019-08-31 11:36:08.000000000 +0200
@@ -15,8 +15,16 @@
 instance NFData HttpVersion where
     rnf !_ = ()
 
+isHeaderChar :: Char -> Bool
+isHeaderChar c =
+  (c >= 'a' && c <= 'z') ||
+  (c >= 'A' && c <= 'Z') ||
+  (c >= '0' && c <= '9') ||
+  (c == '_') ||
+  (c == '-')
+
 header = do
-  name <- B.takeWhile1 (B.inClass "a-zA-Z0-9_-") <* B.char ':' <* B.skipSpace
+  name <- B.takeWhile1 isHeaderChar <* B.char ':' <* B.skipSpace
   body <- bodyLine
   return (name, body)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/attoparsec-0.13.2.2/benchmarks/HeadersByteString.hs 
new/attoparsec-0.13.2.3/benchmarks/HeadersByteString.hs
--- old/attoparsec-0.13.2.2/benchmarks/HeadersByteString.hs     2018-01-12 
23:56:55.000000000 +0100
+++ new/attoparsec-0.13.2.3/benchmarks/HeadersByteString.hs     2019-08-31 
11:36:08.000000000 +0200
@@ -9,6 +9,15 @@
 import qualified Data.Attoparsec.ByteString.Lazy as BL
 import qualified Data.ByteString.Char8 as B
 
+-- Note: In the benchmarks for parsing an http request
+-- from a strict bytestring, we consider warp's implementation,
+-- which has highly optimized code for handling the first
+-- line in particular. It's treatment of the headers
+-- is more relaxed from the treatment they are given by the
+-- attoparsec parser benchmarked here. Consequently, it
+-- is should not be possible to match its performance since
+-- it accepts header names with disallowed characters.
+
 headers :: IO Benchmark
 headers = do
   req <- B.readFile =<< pathTo "http-request.txt"
@@ -18,7 +27,7 @@
   return $ bgroup "headers" [
       bgroup "B" [
         bench "request" $ nf (B.parseOnly request) req
-      , bench "warp" $ nfIO (parseHeaderLines [req])
+      , bench "warp" $ nfIO (parseHeaderLines (B.split '\n' req))
       , bench "response" $ nf (B.parseOnly response) resp
       ]
     , bgroup "BL" [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/attoparsec-0.13.2.2/benchmarks/http-request.txt 
new/attoparsec-0.13.2.3/benchmarks/http-request.txt
--- old/attoparsec-0.13.2.2/benchmarks/http-request.txt 2018-01-12 
23:56:55.000000000 +0100
+++ new/attoparsec-0.13.2.3/benchmarks/http-request.txt 2019-08-31 
11:36:08.000000000 +0200
@@ -1,14 +1,9 @@
 GET / HTTP/1.1
 Host: twitter.com
-Accept: text/html, application/xhtml+xml, application/xml; q=0.9,
-       image/webp, */*; q=0.8
+Accept: text/html, application/xhtml+xml, application/xml; q=0.9, image/webp, 
*/*; q=0.8
 Accept-Encoding: gzip,deflate,sdch
 Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
 Cache-Control: max-age=0
-Cookie: guest_id=v1%3A139; _twitter_sess=BAh7CSIKZmxhc2hJQz-e1e1;
-       __utma=43838368.452555194.1399611824.1; __utmb=43838368;
-       __utmc=43838368; __utmz=1399611824.1.1.utmcsr=(direct)|utmcmd=(none)
-User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5)
-       AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.86
-       Safari/537.36
+Cookie: guest_id=v1%3A139; _twitter_sess=BAh7CSIKZmxhc2hJQz-e1e1; 
__utma=43838368.452555194.1399611824.1; __utmb=43838368; __utmc=43838368; 
__utmz=1399611824.1.1.utmcsr=(direct)|utmcmd=(none)
+User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 
(KHTML, like Gecko) Chrome/35.0.1916.86 Safari/537.36
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/attoparsec-0.13.2.2/benchmarks/http-response.txt 
new/attoparsec-0.13.2.3/benchmarks/http-response.txt
--- old/attoparsec-0.13.2.2/benchmarks/http-response.txt        2018-01-12 
23:56:55.000000000 +0100
+++ new/attoparsec-0.13.2.3/benchmarks/http-response.txt        2019-08-31 
11:36:08.000000000 +0200
@@ -3,10 +3,8 @@
 Expires: -1
 Cache-Control: private, max-age=0
 Content-Type: text/html; charset=ISO-8859-1
-Set-Cookie: PREF=ID=1a871afc4240db5e:FF:LM=1399609497:S=e5MZ0itEekjVwNcU;
-       expires=Sun, 08-May-2016 04:24:57 GMT; path=/; domain=.google.com
-Set-Cookie: NID=67=-WlfaDG6VSEPk7abAjrK98HBSoCD2ID6JKkUR95tEumzDmg7Fc8pSQ8;
-       expires=Sat, 08-Nov-2014 04:24:57 GMT; path=/; domain=.google.com; 
HttpOnly
+Set-Cookie: PREF=ID=1a871afc4240db5e:FF:LM=1399609497:S=e5MZ0itEekjVwNcU; 
expires=Sun, 08-May-2016 04:24:57 GMT; path=/; domain=.google.com
+Set-Cookie: NID=67=-WlfaDG6VSEPk7abAjrK98HBSoCD2ID6JKkUR95tEumzDmg7Fc8pSQ8; 
expires=Sat, 08-Nov-2014 04:24:57 GMT; path=/; domain=.google.com; HttpOnly
 P3P: CP="This is not a P3P policy! See 
http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657 for 
more info."
 Server: gws
 X-XSS-Protection: 1; mode=block
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/attoparsec-0.13.2.2/tests/QC/ByteString.hs 
new/attoparsec-0.13.2.3/tests/QC/ByteString.hs
--- old/attoparsec-0.13.2.2/tests/QC/ByteString.hs      2018-01-12 
23:56:55.000000000 +0100
+++ new/attoparsec-0.13.2.3/tests/QC/ByteString.hs      2019-08-31 
11:36:08.000000000 +0200
@@ -26,9 +26,11 @@
 satisfy :: Word8 -> L.ByteString -> Property
 satisfy w s = parseBS (P.satisfy (<=w)) (L.cons w s) === Just w
 
-satisfyWith :: Char -> L.ByteString -> Property
-satisfyWith c s = parseBS (P.satisfyWith (chr . fromIntegral) (<=c))
+satisfyWith :: Word8 -> L.ByteString -> Property
+satisfyWith w s = parseBS (P.satisfyWith (chr . fromIntegral) (<=c))
                          (L.cons (fromIntegral (ord c)) s) === Just c
+  where
+    c = chr (fromIntegral w)
 
 word8 :: Word8 -> L.ByteString -> Property
 word8 w s = parseBS (P.word8 w) (L.cons w s) === Just w
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/attoparsec-0.13.2.2/tests/QC/Text.hs 
new/attoparsec-0.13.2.3/tests/QC/Text.hs
--- old/attoparsec-0.13.2.2/tests/QC/Text.hs    2018-01-12 23:56:55.000000000 
+0100
+++ new/attoparsec-0.13.2.3/tests/QC/Text.hs    2019-08-31 11:36:08.000000000 
+0200
@@ -6,6 +6,7 @@
 import Control.Applicative ((<*>), (<$>))
 #endif
 import Data.Int (Int64)
+import Data.Word (Word8)
 import Prelude hiding (take, takeWhile)
 import QC.Common (liftOp, parseT)
 import qualified QC.Text.FastSet as FastSet
@@ -16,8 +17,10 @@
 import qualified Data.Attoparsec.Text as P
 import qualified Data.Attoparsec.Text.Lazy as PL
 import qualified Data.Attoparsec.Text.FastSet as S
+import qualified Data.ByteString as BS
 import qualified Data.Char as Char
 import qualified Data.Text as T
+import qualified Data.Text.Encoding as TE
 import qualified Data.Text.Lazy as L
 
 -- Basic byte-level combinators.
@@ -70,9 +73,12 @@
     === Just t'
   where t' = toStrict t
 
-stringCI :: T.Text -> Property
-stringCI s = P.parseOnly (P.stringCI fs) s === Right s
+-- | Note: "simple, and efficient" works for well formed input...
+-- i.e. e.g. Latin1 texts
+stringCI :: [Word8] -> Property
+stringCI ws = P.parseOnly (P.stringCI fs) s === Right s
   where fs = T.toCaseFold s
+        s  = TE.decodeLatin1 (BS.pack ws)
 
 asciiCI :: T.Text -> Gen Bool
 asciiCI x =
@@ -150,7 +156,9 @@
                      (c, fst <$> L.uncons s') === ('\r', Just '\n')
 
 scan :: L.Text -> Positive Int64 -> Property
-scan s (Positive k) = parseT p s === Just (toStrict $ L.take k s)
+-- for some reason, if counterexample is removed, this test fails?
+scan s (Positive k) = counterexample (show s)
+                    $ parseT p s === Just (toStrict $ L.take k s)
   where p = P.scan k $ \ n _ ->
             if n > 0 then let !n' = n - 1 in Just n' else Nothing
 

++++++ attoparsec.cabal ++++++
--- /var/tmp/diff_new_pack.hxWZAJ/_old  2020-02-19 18:37:46.193862571 +0100
+++ /var/tmp/diff_new_pack.hxWZAJ/_new  2020-02-19 18:37:46.193862571 +0100
@@ -1,13 +1,13 @@
 name:            attoparsec
-version:         0.13.2.2
-x-revision: 2
+version:         0.13.2.3
+x-revision: 1
 license:         BSD3
 license-file:    LICENSE
 category:        Text, Parsing
 author:          Bryan O'Sullivan <[email protected]>
 maintainer:      Bryan O'Sullivan <[email protected]>, Ben Gamari 
<[email protected]>
 stability:       experimental
-tested-with:     GHC == 7.0.4, GHC == 7.2.2, GHC == 7.4.2, GHC ==7.6.3, GHC 
==7.8.4, GHC ==7.10.3, GHC ==8.0.2, GHC ==8.2.2
+tested-with:     GHC == 7.0.4, GHC == 7.2.2, GHC == 7.4.2, GHC ==7.6.3, GHC 
==7.8.4, GHC ==7.10.3, GHC ==8.0.2, GHC ==8.2.2, GHC==8.4.4, GHC==8.6.5, 
GHC==8.8.1
 synopsis:        Fast combinator parsing for bytestrings and text
 cabal-version:   >= 1.8
 homepage:        https://github.com/bos/attoparsec
@@ -40,12 +40,12 @@
 
 library
   build-depends: array,
-                 base >= 4.2 && < 5,
+                 base >= 4.3 && < 5,
                  bytestring,
                  containers,
                  deepseq,
                  scientific >= 0.3.1 && < 0.4,
-                 transformers >= 0.2 && (< 0.4 || >= 0.4.1.0) && < 0.6,
+                 transformers,
                  text >= 1.1.1.3
   if impl(ghc < 7.4)
     build-depends:
@@ -54,7 +54,7 @@
   if !impl(ghc >= 8.0)
     -- Data.Semigroup && Control.Monad.Fail are available in base-4.9+
     build-depends: fail == 4.9.*,
-                   semigroups >=0.16.1 && <0.19
+                   semigroups >=0.16.1 && <0.20
 
   exposed-modules: Data.Attoparsec
                    Data.Attoparsec.ByteString
@@ -125,16 +125,16 @@
 
   build-depends:
     array,
-    base >= 4 && < 5,
+    base,
     bytestring,
     deepseq >= 1.1,
-    QuickCheck >= 2.7 && < 2.10,
+    QuickCheck >= 2.13.2 && < 2.14,
     quickcheck-unicode,
     scientific,
     tasty >= 0.11,
     tasty-quickcheck >= 0.8,
     text,
-    transformers >= 0.2 && (< 0.4 || >= 0.4.1.0) && < 0.6,
+    transformers,
     vector
 
   if !impl(ghc >= 8.0)
@@ -179,7 +179,7 @@
     parsec >= 3.1.2,
     scientific,
     text >= 1.1.1.0,
-    transformers >= 0.2 && (< 0.4 || >= 0.4.1.0) && < 0.6,
+    transformers,
     unordered-containers,
     vector
 


Reply via email to