Hello community,

here is the log from the commit of package ghc-base64-bytestring for 
openSUSE:Factory checked in at 2020-01-29 13:11:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-base64-bytestring (Old)
 and      /work/SRC/openSUSE:Factory/.ghc-base64-bytestring.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc-base64-bytestring"

Wed Jan 29 13:11:58 2020 rev:10 rq:766983 version:1.0.0.3

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/ghc-base64-bytestring/ghc-base64-bytestring.changes  
    2019-12-27 13:51:48.428592132 +0100
+++ 
/work/SRC/openSUSE:Factory/.ghc-base64-bytestring.new.26092/ghc-base64-bytestring.changes
   2020-01-29 13:12:55.490002484 +0100
@@ -1,0 +2,13 @@
+Tue Jan 14 03:03:06 UTC 2020 - [email protected]
+
+- Update base64-bytestring to version 1.0.0.3.
+  # 1.0.0.3
+
+  * Made performance more robust
+    ([#27](https://github.com/haskell/base64-bytestring/pull/27)).
+  * Improved documentation
+    ([#23](https://github.com/haskell/base64-bytestring/pull/23)).
+  * Improved the performance of decodeLenient a bit
+    ([#21](https://github.com/haskell/base64-bytestring/pull/21)).
+
+-------------------------------------------------------------------

Old:
----
  base64-bytestring-1.0.0.2.tar.gz

New:
----
  base64-bytestring-1.0.0.3.tar.gz

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

Other differences:
------------------
++++++ ghc-base64-bytestring.spec ++++++
--- /var/tmp/diff_new_pack.lRrxzK/_old  2020-01-29 13:12:57.166003341 +0100
+++ /var/tmp/diff_new_pack.lRrxzK/_new  2020-01-29 13:12:57.174003345 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package ghc-base64-bytestring
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 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,7 +19,7 @@
 %global pkg_name base64-bytestring
 %bcond_with tests
 Name:           ghc-%{pkg_name}
-Version:        1.0.0.2
+Version:        1.0.0.3
 Release:        0
 Summary:        Fast base64 encoding and decoding for ByteStrings
 License:        BSD-3-Clause

++++++ base64-bytestring-1.0.0.2.tar.gz -> base64-bytestring-1.0.0.3.tar.gz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/base64-bytestring-1.0.0.2/CHANGELOG.md 
new/base64-bytestring-1.0.0.3/CHANGELOG.md
--- old/base64-bytestring-1.0.0.2/CHANGELOG.md  1970-01-01 01:00:00.000000000 
+0100
+++ new/base64-bytestring-1.0.0.3/CHANGELOG.md  2001-09-09 03:46:40.000000000 
+0200
@@ -1,3 +1,12 @@
+# 1.0.0.3
+
+* Made performance more robust 
+  ([#27](https://github.com/haskell/base64-bytestring/pull/27)).
+* Improved documentation
+  ([#23](https://github.com/haskell/base64-bytestring/pull/23)).
+* Improved the performance of decodeLenient a bit
+  ([#21](https://github.com/haskell/base64-bytestring/pull/21)).
+
 # 1.0.0.2
 
 * Fixed a write past allocated memory in joinWith (potential security
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/base64-bytestring-1.0.0.2/Data/ByteString/Base64/Internal.hs 
new/base64-bytestring-1.0.0.3/Data/ByteString/Base64/Internal.hs
--- old/base64-bytestring-1.0.0.2/Data/ByteString/Base64/Internal.hs    
1970-01-01 01:00:00.000000000 +0100
+++ new/base64-bytestring-1.0.0.3/Data/ByteString/Base64/Internal.hs    
2001-09-09 03:46:40.000000000 +0200
@@ -91,7 +91,7 @@
           fill (castPtr dptr) (sptr `plusPtr` soff)
   return $! PS dfp 0 dlen
 
-data EncodeTable = ET (ForeignPtr Word8) (ForeignPtr Word16)
+data EncodeTable = ET !(ForeignPtr Word8) !(ForeignPtr Word16)
 
 -- The encoding table is constructed such that the expansion of a 12-bit
 -- block to a 16-bit block can be done by a single Word16 copy from the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/base64-bytestring-1.0.0.2/Data/ByteString/Base64/Lazy.hs 
new/base64-bytestring-1.0.0.3/Data/ByteString/Base64/Lazy.hs
--- old/base64-bytestring-1.0.0.2/Data/ByteString/Base64/Lazy.hs        
1970-01-01 01:00:00.000000000 +0100
+++ new/base64-bytestring-1.0.0.3/Data/ByteString/Base64/Lazy.hs        
2001-09-09 03:46:40.000000000 +0200
@@ -57,4 +57,5 @@
               . LC.filter goodChar
     where -- We filter out and '=' padding here, but B64.decodeLenient
           -- handles that
-          goodChar c = isAlphaNum c || c == '+' || c == '/'
+          goodChar c = isDigit c || isAsciiUpper c || isAsciiLower c
+                                 || c == '+' || c == '/'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/base64-bytestring-1.0.0.2/Data/ByteString/Base64/URL/Lazy.hs 
new/base64-bytestring-1.0.0.3/Data/ByteString/Base64/URL/Lazy.hs
--- old/base64-bytestring-1.0.0.2/Data/ByteString/Base64/URL/Lazy.hs    
1970-01-01 01:00:00.000000000 +0100
+++ new/base64-bytestring-1.0.0.3/Data/ByteString/Base64/URL/Lazy.hs    
2001-09-09 03:46:40.000000000 +0200
@@ -58,3 +58,4 @@
     where -- We filter out and '=' padding here, but B64.decodeLenient
           -- handles that
           goodChar c = isAlphaNum c || c == '-' || c == '_'
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/base64-bytestring-1.0.0.2/Data/ByteString/Base64.hs 
new/base64-bytestring-1.0.0.3/Data/ByteString/Base64.hs
--- old/base64-bytestring-1.0.0.2/Data/ByteString/Base64.hs     1970-01-01 
01:00:00.000000000 +0100
+++ new/base64-bytestring-1.0.0.3/Data/ByteString/Base64.hs     2001-09-09 
03:46:40.000000000 +0200
@@ -36,6 +36,11 @@
 -- | Decode a base64-encoded string. This function strictly follows
 -- the specification in
 -- <http://tools.ietf.org/rfc/rfc4648 RFC 4648>.
+--
+-- (Note: this means that even @"\n", "\r\n"@ as line breaks are rejected
+-- rather than ignored.  If you are using this in the context of a
+-- standard that overrules RFC 4648 such as HTTP multipart mime bodies,
+-- consider using 'decodeLenient'.)
 decode :: ByteString -> Either String ByteString
 decode s = decodeWithTable decodeFP s
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/base64-bytestring-1.0.0.2/base64-bytestring.cabal 
new/base64-bytestring-1.0.0.3/base64-bytestring.cabal
--- old/base64-bytestring-1.0.0.2/base64-bytestring.cabal       1970-01-01 
01:00:00.000000000 +0100
+++ new/base64-bytestring-1.0.0.3/base64-bytestring.cabal       2001-09-09 
03:46:40.000000000 +0200
@@ -1,5 +1,5 @@
 name:                base64-bytestring
-version:             1.0.0.2
+version:             1.0.0.3
 synopsis:            Fast base64 encoding and decoding for ByteStrings
 description:         This package provides support for encoding and decoding 
binary data according to @base64@ (see also 
<https://tools.ietf.org/html/rfc4648 RFC 4648>) for strict and lazy ByteStrings.
 homepage:            https://github.com/haskell/base64-bytestring
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/base64-bytestring-1.0.0.2/benchmarks/BM.hs 
new/base64-bytestring-1.0.0.3/benchmarks/BM.hs
--- old/base64-bytestring-1.0.0.2/benchmarks/BM.hs      1970-01-01 
01:00:00.000000000 +0100
+++ new/base64-bytestring-1.0.0.3/benchmarks/BM.hs      2001-09-09 
03:46:40.000000000 +0200
@@ -5,6 +5,7 @@
 import qualified Data.ByteString.Base64 as B
 import qualified Data.ByteString.Base64.Lazy as L
 import qualified Data.ByteString.Base64.URL as U
+import qualified Data.ByteString.Base64.URL.Lazy as LU
 import qualified Data.ByteString.Char8 as B
 import qualified Data.ByteString.Lazy as L
 
@@ -38,8 +39,16 @@
 lazy :: String -> L.ByteString -> Benchmark
 lazy name orig =
     bgroup name [
-      bench "decode" $ nf L.decode enc
-    , bench "encode" $ nf L.encode orig
+      bgroup "normal" [
+        bench "decode" $ nf L.decode enc
+      , bench "decodeLenient" $ nf L.decodeLenient enc
+      , bench "encode" $ nf L.encode orig
+      ]
+    , bgroup "url" [
+        bench "decode" $ nf LU.decode enc
+      , bench "decodeLenient" $ nf LU.decodeLenient enc
+      , bench "encode" $ nf LU.encode orig
+      ]
     ]
   where enc = L.encode orig
 


Reply via email to