Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ghc-primitive for openSUSE:Factory 
checked in at 2021-08-25 20:57:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-primitive (Old)
 and      /work/SRC/openSUSE:Factory/.ghc-primitive.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc-primitive"

Wed Aug 25 20:57:01 2021 rev:25 rq:912615 version:0.7.2.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-primitive/ghc-primitive.changes      
2021-06-01 10:40:32.149127066 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-primitive.new.1899/ghc-primitive.changes    
2021-08-25 20:58:01.593175501 +0200
@@ -1,0 +2,11 @@
+Wed Aug  4 08:16:01 UTC 2021 - [email protected]
+
+- Update primitive to version 0.7.2.0.
+  ## Changes in version 0.7.2.0
+
+    * Add `thawByteArray` and `thawPrimArray`.
+
+    * Changed the `Show` instance of `ByteArray`, so that all 8-bit words
+      are rendered as two digits. For example, display `0x0D` instead of `0xD`.
+
+-------------------------------------------------------------------

Old:
----
  primitive-0.7.1.0.tar.gz
  primitive.cabal

New:
----
  primitive-0.7.2.0.tar.gz

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

Other differences:
------------------
++++++ ghc-primitive.spec ++++++
--- /var/tmp/diff_new_pack.10Gi0k/_old  2021-08-25 20:58:02.193174713 +0200
+++ /var/tmp/diff_new_pack.10Gi0k/_new  2021-08-25 20:58:02.197174708 +0200
@@ -19,13 +19,12 @@
 %global pkg_name primitive
 %bcond_with tests
 Name:           ghc-%{pkg_name}
-Version:        0.7.1.0
+Version:        0.7.2.0
 Release:        0
 Summary:        Primitive memory-related operations
 License:        BSD-3-Clause
 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/3.cabal#/%{pkg_name}.cabal
 BuildRequires:  ghc-Cabal-devel
 BuildRequires:  ghc-deepseq-devel
 BuildRequires:  ghc-rpm-macros
@@ -35,7 +34,6 @@
 BuildRequires:  ghc-QuickCheck-devel
 BuildRequires:  ghc-base-orphans-devel
 BuildRequires:  ghc-quickcheck-classes-base-devel
-BuildRequires:  ghc-semigroups-devel
 BuildRequires:  ghc-tagged-devel
 BuildRequires:  ghc-tasty-devel
 BuildRequires:  ghc-tasty-quickcheck-devel
@@ -57,7 +55,6 @@
 
 %prep
 %autosetup -n %{pkg_name}-%{version}
-cp -p %{SOURCE1} %{pkg_name}.cabal
 
 %build
 %ghc_lib_build

++++++ primitive-0.7.1.0.tar.gz -> primitive-0.7.2.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/Control/Monad/Primitive.hs 
new/primitive-0.7.2.0/Control/Monad/Primitive.hs
--- old/primitive-0.7.1.0/Control/Monad/Primitive.hs    2001-09-09 
03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/Control/Monad/Primitive.hs    2001-09-09 
03:46:40.000000000 +0200
@@ -40,14 +40,17 @@
 
 import Control.Monad.Trans.Cont     ( ContT    )
 import Control.Monad.Trans.Identity ( IdentityT (IdentityT) )
-import Control.Monad.Trans.List     ( ListT    )
 import Control.Monad.Trans.Maybe    ( MaybeT   )
-import Control.Monad.Trans.Error    ( ErrorT, Error)
 import Control.Monad.Trans.Reader   ( ReaderT  )
 import Control.Monad.Trans.State    ( StateT   )
 import Control.Monad.Trans.Writer   ( WriterT  )
 import Control.Monad.Trans.RWS      ( RWST     )
 
+#if !MIN_VERSION_transformers(0,6,0)
+import Control.Monad.Trans.List     ( ListT    )
+import Control.Monad.Trans.Error    ( ErrorT, Error)
+#endif
+
 #if MIN_VERSION_transformers(0,4,0)
 import Control.Monad.Trans.Except   ( ExceptT  )
 #endif
@@ -117,18 +120,20 @@
   internal (IdentityT m) = internal m
   {-# INLINE internal #-}
 
+#if !MIN_VERSION_transformers(0,6,0)
 instance PrimMonad m => PrimMonad (ListT m) where
   type PrimState (ListT m) = PrimState m
   primitive = lift . primitive
   {-# INLINE primitive #-}
 
-instance PrimMonad m => PrimMonad (MaybeT m) where
-  type PrimState (MaybeT m) = PrimState m
+instance (Error e, PrimMonad m) => PrimMonad (ErrorT e m) where
+  type PrimState (ErrorT e m) = PrimState m
   primitive = lift . primitive
   {-# INLINE primitive #-}
+#endif
 
-instance (Error e, PrimMonad m) => PrimMonad (ErrorT e m) where
-  type PrimState (ErrorT e m) = PrimState m
+instance PrimMonad m => PrimMonad (MaybeT m) where
+  type PrimState (MaybeT m) = PrimState m
   primitive = lift . primitive
   {-# INLINE primitive #-}
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/Data/Primitive/ByteArray.hs 
new/primitive-0.7.2.0/Data/Primitive/ByteArray.hs
--- old/primitive-0.7.1.0/Data/Primitive/ByteArray.hs   2001-09-09 
03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/Data/Primitive/ByteArray.hs   2001-09-09 
03:46:40.000000000 +0200
@@ -41,7 +41,7 @@
   compareByteArrays,
 
   -- * Freezing and thawing
-  freezeByteArray,
+  freezeByteArray, thawByteArray,
   unsafeFreezeByteArray, unsafeThawByteArray,
 
   -- * Block operations
@@ -74,6 +74,8 @@
 
 import Foreign.C.Types
 import Data.Word ( Word8 )
+import Data.Bits ( (.&.), unsafeShiftR )
+import GHC.Show ( intToDigit )
 import GHC.Base ( Int(..) )
 #if __GLASGOW_HASKELL__ >= 708
 import qualified GHC.Exts as Exts ( IsList(..) )
@@ -232,6 +234,25 @@
   copyMutableByteArray dst 0 src off len
   unsafeFreezeByteArray dst
 
+-- | Create a mutable byte array from a slice of an immutable byte array.
+-- The offset and length are given in bytes.
+--
+-- This operation makes a copy of the specified slice, so it is safe to
+-- use the immutable array afterward.
+--
+-- @since 0.7.2.0
+thawByteArray
+  :: PrimMonad m
+  => ByteArray -- ^ source
+  -> Int       -- ^ offset in bytes
+  -> Int       -- ^ length in bytes
+  -> m (MutableByteArray (PrimState m))
+{-# INLINE thawByteArray #-}
+thawByteArray !src !off !len = do
+  dst <- newByteArray len
+  copyByteArray dst 0 src off len
+  return dst
+
 -- | Convert a mutable byte array to an immutable one without copying. The
 -- array should not be modified after the conversion.
 unsafeFreezeByteArray
@@ -543,12 +564,24 @@
   dataTypeOf _ = mkNoRepType "Data.Primitive.ByteArray.MutableByteArray"
 
 -- | @since 0.6.3.0
+--
+-- Behavior changed in 0.7.2.0. Before 0.7.2.0, this instance rendered
+-- 8-bit words less than 16 as a single hexadecimal digit (e.g. 13 was @0xD@).
+-- Starting with 0.7.2.0, all 8-bit words are represented as two digits
+-- (e.g. 13 is @0x0D@).
 instance Show ByteArray where
   showsPrec _ ba =
       showString "[" . go 0
     where
+      showW8 :: Word8 -> String -> String
+      showW8 !w s =
+          '0'
+        : 'x'
+        : intToDigit (fromIntegral (unsafeShiftR w 4))
+        : intToDigit (fromIntegral (w .&. 0x0F))
+        : s
       go i
-        | i < sizeofByteArray ba = comma . showString "0x" . showHex 
(indexByteArray ba i :: Word8) . go (i+1)
+        | i < sizeofByteArray ba = comma . showW8 (indexByteArray ba i :: 
Word8) . go (i+1)
         | otherwise              = showChar ']'
         where
           comma | i == 0    = id
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/primitive-0.7.1.0/Data/Primitive/Internal/Operations.hs 
new/primitive-0.7.2.0/Data/Primitive/Internal/Operations.hs
--- old/primitive-0.7.1.0/Data/Primitive/Internal/Operations.hs 2001-09-09 
03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/Data/Primitive/Internal/Operations.hs 2001-09-09 
03:46:40.000000000 +0200
@@ -1,4 +1,4 @@
-{-# LANGUAGE MagicHash, UnliftedFFITypes #-}
+{-# LANGUAGE CPP, MagicHash, UnliftedFFITypes #-}
 
 -- |
 -- Module      : Data.Primitive.Internal.Operations
@@ -32,26 +32,49 @@
 import Foreign.C.Types
 import GHC.Exts
 
+
+#if __GLASGOW_HASKELL__ >= 902
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8"
+  setWord8Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Word8# -> IO ()
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16"
+  setWord16Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Word16# -> IO 
()
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32"
+  setWord32Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Word32# -> IO 
()
+#else
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8"
   setWord8Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Word# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16"
   setWord16Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Word# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32"
   setWord32Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Word# -> IO ()
+#endif
+
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word64"
   setWord64Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Word64_# -> 
IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word"
   setWordArray# :: MutableByteArray# s -> CPtrdiff -> CSize -> Word# -> IO ()
+
+#if __GLASGOW_HASKELL__ >= 902
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8"
+  setInt8Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Int8# -> IO ()
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16"
+  setInt16Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Int16# -> IO ()
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32"
+  setInt32Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Int32# -> IO ()
+#else
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8"
   setInt8Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Int# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16"
   setInt16Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Int# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32"
   setInt32Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Int# -> IO ()
+#endif
+
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word64"
   setInt64Array# :: MutableByteArray# s -> CPtrdiff -> CSize -> Int64_# -> IO 
()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word"
   setIntArray# :: MutableByteArray# s -> CPtrdiff -> CSize -> Int# -> IO ()
+
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Ptr"
   setAddrArray# :: MutableByteArray# s -> CPtrdiff -> CSize -> Addr# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Ptr"
@@ -63,26 +86,48 @@
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Char"
   setWideCharArray# :: MutableByteArray# s -> CPtrdiff -> CSize -> Char# -> IO 
()
 
+#if __GLASGOW_HASKELL__ >= 902
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8"
+  setWord8OffAddr# :: Addr# -> CPtrdiff -> CSize -> Word8# -> IO ()
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16"
+  setWord16OffAddr# :: Addr# -> CPtrdiff -> CSize -> Word16# -> IO ()
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32"
+  setWord32OffAddr# :: Addr# -> CPtrdiff -> CSize -> Word32# -> IO ()
+#else
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8"
   setWord8OffAddr# :: Addr# -> CPtrdiff -> CSize -> Word# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16"
   setWord16OffAddr# :: Addr# -> CPtrdiff -> CSize -> Word# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32"
   setWord32OffAddr# :: Addr# -> CPtrdiff -> CSize -> Word# -> IO ()
+#endif
+
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word64"
   setWord64OffAddr# :: Addr# -> CPtrdiff -> CSize -> Word64_# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word"
   setWordOffAddr# :: Addr# -> CPtrdiff -> CSize -> Word# -> IO ()
+
+#if __GLASGOW_HASKELL__ >= 902
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8"
+  setInt8OffAddr# :: Addr# -> CPtrdiff -> CSize -> Int8# -> IO ()
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16"
+  setInt16OffAddr# :: Addr# -> CPtrdiff -> CSize -> Int16# -> IO ()
+foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32"
+  setInt32OffAddr# :: Addr# -> CPtrdiff -> CSize -> Int32# -> IO ()
+#else
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8"
   setInt8OffAddr# :: Addr# -> CPtrdiff -> CSize -> Int# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16"
   setInt16OffAddr# :: Addr# -> CPtrdiff -> CSize -> Int# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32"
   setInt32OffAddr# :: Addr# -> CPtrdiff -> CSize -> Int# -> IO ()
+#endif
+
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word64"
   setInt64OffAddr# :: Addr# -> CPtrdiff -> CSize -> Int64_# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word"
   setIntOffAddr# :: Addr# -> CPtrdiff -> CSize -> Int# -> IO ()
+
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Ptr"
   setAddrOffAddr# :: Addr# -> CPtrdiff -> CSize -> Addr# -> IO ()
 foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Ptr"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/Data/Primitive/PrimArray.hs 
new/primitive-0.7.2.0/Data/Primitive/PrimArray.hs
--- old/primitive-0.7.1.0/Data/Primitive/PrimArray.hs   2001-09-09 
03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/Data/Primitive/PrimArray.hs   2001-09-09 
03:46:40.000000000 +0200
@@ -43,6 +43,7 @@
   , indexPrimArray
     -- * Freezing and Thawing
   , freezePrimArray
+  , thawPrimArray
   , unsafeFreezePrimArray
   , unsafeThawPrimArray
     -- * Block Operations
@@ -220,7 +221,7 @@
 
 -- | Create a 'PrimArray' from a list.
 --
--- @primArrayFromList vs = `byteArrayFromListN` (length vs) vs@
+-- @primArrayFromList vs = `primArrayFromListN` (length vs) vs@
 primArrayFromList :: Prim a => [a] -> PrimArray a
 primArrayFromList vs = primArrayFromListN (L.length vs) vs
 
@@ -502,7 +503,26 @@
   copyMutablePrimArray dst 0 src off len
   unsafeFreezePrimArray dst
 
--- | Convert a mutable byte array to an immutable one without copying. The
+-- | Create a mutable primitive array from a slice of an immutable primitive 
array.
+-- The offset and length are given in elements.
+--
+-- This operation makes a copy of the specified slice, so it is safe to
+-- use the immutable array afterward.
+--
+-- @since 0.7.2.0
+thawPrimArray
+  :: (PrimMonad m, Prim a)
+  => PrimArray a -- ^ source
+  -> Int         -- ^ offset in elements
+  -> Int         -- ^ length in elements
+  -> m (MutablePrimArray (PrimState m) a)
+{-# INLINE thawPrimArray #-}
+thawPrimArray !src !off !len = do
+  dst <- newPrimArray len
+  copyPrimArray dst 0 src off len
+  return dst
+
+-- | Convert a mutable primitive array to an immutable one without copying. The
 -- array should not be modified after the conversion.
 unsafeFreezePrimArray
   :: PrimMonad m => MutablePrimArray (PrimState m) a -> m (PrimArray a)
@@ -532,9 +552,9 @@
 sizeofPrimArray (PrimArray arr#) = I# (quotInt# (sizeofByteArray# arr#) 
(sizeOf# (undefined :: a)))
 
 #if __GLASGOW_HASKELL__ >= 802
--- | Check whether or not the byte array is pinned. Pinned primitive arrays 
cannot
+-- | Check whether or not the primitive array is pinned. Pinned primitive 
arrays cannot
 --   be moved by the garbage collector. It is safe to use 'primArrayContents'
---   on such byte arrays. This function is only available when compiling with
+--   on such arrays. This function is only available when compiling with
 --   GHC 8.2 or newer.
 --
 --   @since 0.7.1.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/Data/Primitive/Types.hs 
new/primitive-0.7.2.0/Data/Primitive/Types.hs
--- old/primitive-0.7.1.0/Data/Primitive/Types.hs       2001-09-09 
03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/Data/Primitive/Types.hs       2001-09-09 
03:46:40.000000000 +0200
@@ -250,7 +250,14 @@
 ; {-# INLINE setOffAddr# #-}                                    \
 }
 
-#if __GLASGOW_HASKELL__ >= 710
+#if __GLASGOW_HASKELL__ >= 902
+liberate# :: State# s -> State# r
+liberate# = unsafeCoerce#
+shimmedSetWord8Array# :: MutableByteArray# s -> Int -> Int -> Word8# -> IO ()
+shimmedSetWord8Array# m (I# off) (I# len) w = IO (\s -> (# liberate# 
(GHC.Exts.setByteArray# m off len (GHC.Exts.word2Int# (GHC.Exts.word8ToWord# 
w)) (liberate# s)), () #))
+shimmedSetInt8Array# :: MutableByteArray# s -> Int -> Int -> Int8# -> IO ()
+shimmedSetInt8Array# m (I# off) (I# len) i = IO (\s -> (# liberate# 
(GHC.Exts.setByteArray# m off len (GHC.Exts.int8ToInt# i) (liberate# s)), () #))
+#elif __GLASGOW_HASKELL__ >= 710
 liberate# :: State# s -> State# r
 liberate# = unsafeCoerce#
 shimmedSetWord8Array# :: MutableByteArray# s -> Int -> Int -> Word# -> IO ()
@@ -421,8 +428,8 @@
 
 -- | @since 0.7.1.0
 instance Prim WordPtr where
-  sizeOf# _ = sizeOf# (undefined :: Ptr ()) 
-  alignment# _ = alignment# (undefined :: Ptr ()) 
+  sizeOf# _ = sizeOf# (undefined :: Ptr ())
+  alignment# _ = alignment# (undefined :: Ptr ())
   indexByteArray# a i = ptrToWordPtr (indexByteArray# a i)
   readByteArray# a i s0 = case readByteArray# a i s0 of
     (# s1, p #) -> (# s1, ptrToWordPtr p #)
@@ -433,11 +440,11 @@
     (# s1, p #) -> (# s1, ptrToWordPtr p #)
   writeOffAddr# a i wp = writeOffAddr# a i (wordPtrToPtr wp)
   setOffAddr# a i n wp = setOffAddr# a i n (wordPtrToPtr wp)
-  
+
 -- | @since 0.7.1.0
 instance Prim IntPtr where
-  sizeOf# _ = sizeOf# (undefined :: Ptr ()) 
-  alignment# _ = alignment# (undefined :: Ptr ()) 
+  sizeOf# _ = sizeOf# (undefined :: Ptr ())
+  alignment# _ = alignment# (undefined :: Ptr ())
   indexByteArray# a i = ptrToIntPtr (indexByteArray# a i)
   readByteArray# a i s0 = case readByteArray# a i s0 of
     (# s1, p #) -> (# s1, ptrToIntPtr p #)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/cbits/primitive-memops.c 
new/primitive-0.7.2.0/cbits/primitive-memops.c
--- old/primitive-0.7.1.0/cbits/primitive-memops.c      2001-09-09 
03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/cbits/primitive-memops.c      2001-09-09 
03:46:40.000000000 +0200
@@ -45,14 +45,14 @@
   return memcmp( s1 + off1, s2 + off2, n );
 }
 
-void hsprimitive_memset_Word8 (HsWord8 *p, ptrdiff_t off, size_t n, HsWord x)
+void hsprimitive_memset_Word8 (HsWord8 *p, ptrdiff_t off, size_t n, HsWord8 x)
 {
   memset( (char *)(p+off), x, n );
 }
 
 /* MEMSET(HsWord8, HsWord) */
-MEMSET(Word16, HsWord)
-MEMSET(Word32, HsWord)
+MEMSET(Word16, HsWord16)
+MEMSET(Word32, HsWord32)
 MEMSET(Word64, HsWord64)
 MEMSET(Word, HsWord)
 MEMSET(Ptr, HsPtr)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/cbits/primitive-memops.h 
new/primitive-0.7.2.0/cbits/primitive-memops.h
--- old/primitive-0.7.1.0/cbits/primitive-memops.h      2001-09-09 
03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/cbits/primitive-memops.h      2001-09-09 
03:46:40.000000000 +0200
@@ -12,9 +12,9 @@
 int  hsprimitive_memcmp( HsWord8 *s1, HsWord8 *s2, size_t n );
 int  hsprimitive_memcmp_offset( HsWord8 *s1, HsInt off1, HsWord8 *s2, HsInt 
off2, size_t n );
 
-void hsprimitive_memset_Word8 (HsWord8 *, ptrdiff_t, size_t, HsWord);
-void hsprimitive_memset_Word16 (HsWord16 *, ptrdiff_t, size_t, HsWord);
-void hsprimitive_memset_Word32 (HsWord32 *, ptrdiff_t, size_t, HsWord);
+void hsprimitive_memset_Word8 (HsWord8 *, ptrdiff_t, size_t, HsWord8);
+void hsprimitive_memset_Word16 (HsWord16 *, ptrdiff_t, size_t, HsWord16);
+void hsprimitive_memset_Word32 (HsWord32 *, ptrdiff_t, size_t, HsWord32);
 void hsprimitive_memset_Word64 (HsWord64 *, ptrdiff_t, size_t, HsWord64);
 void hsprimitive_memset_Word (HsWord *, ptrdiff_t, size_t, HsWord);
 void hsprimitive_memset_Ptr (HsPtr *, ptrdiff_t, size_t, HsPtr);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/changelog.md 
new/primitive-0.7.2.0/changelog.md
--- old/primitive-0.7.1.0/changelog.md  2001-09-09 03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/changelog.md  2001-09-09 03:46:40.000000000 +0200
@@ -1,3 +1,10 @@
+## Changes in version 0.7.2.0
+
+  * Add `thawByteArray` and `thawPrimArray`.
+
+  * Changed the `Show` instance of `ByteArray`, so that all 8-bit words
+    are rendered as two digits. For example, display `0x0D` instead of `0xD`.
+
 ## Changes in version 0.7.1.0
 
   * Introduce convenience class `MonadPrim` and `MonadPrimBase`.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/primitive.cabal 
new/primitive-0.7.2.0/primitive.cabal
--- old/primitive-0.7.1.0/primitive.cabal       2001-09-09 03:46:40.000000000 
+0200
+++ new/primitive-0.7.2.0/primitive.cabal       2001-09-09 03:46:40.000000000 
+0200
@@ -1,6 +1,6 @@
 Cabal-Version: 2.2
 Name:           primitive
-Version:        0.7.1.0
+Version:        0.7.2.0
 License:        BSD-3-Clause
 License-File:   LICENSE
 
@@ -27,7 +27,7 @@
   GHC == 8.2.2,
   GHC == 8.4.4,
   GHC == 8.6.5,
-  GHC == 8.8.2,
+  GHC == 8.8.3,
   GHC == 8.10.1
 
 Library
@@ -53,9 +53,9 @@
         Data.Primitive.Internal.Compat
         Data.Primitive.Internal.Operations
 
-  Build-Depends: base >= 4.5 && < 4.15
+  Build-Depends: base >= 4.5 && < 4.17
                , deepseq >= 1.1 && < 1.5
-               , transformers >= 0.2 && < 0.6
+               , transformers >= 0.2 && < 0.7
   if !impl(ghc >= 8.0)
     Build-Depends: fail == 4.9.*
 
@@ -82,13 +82,14 @@
                , ghc-prim
                , primitive
                , quickcheck-classes-base >=0.6 && <0.7
-               , QuickCheck ^>= 2.13
-               , tasty ^>= 1.2
+               , QuickCheck >= 2.13 && < 2.15
+               , tasty ^>= 1.2 || ^>= 1.3 || ^>= 1.4
                , tasty-quickcheck
                , tagged
                , transformers >=0.4
                , transformers-compat
-               , semigroups
+  if !impl(ghc >= 8.0)
+    build-depends: semigroups
 
   cpp-options:   -DHAVE_UNARY_LAWS
   ghc-options: -O2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/primitive-0.7.1.0/test/main.hs 
new/primitive-0.7.2.0/test/main.hs
--- old/primitive-0.7.1.0/test/main.hs  2001-09-09 03:46:40.000000000 +0200
+++ new/primitive-0.7.2.0/test/main.hs  2001-09-09 03:46:40.000000000 +0200
@@ -357,8 +357,11 @@
         arr3 = mkByteArray ([0xde, 0xad, 0xbe, 0xee] :: [Word8])
         arr4 = mkByteArray ([0xde, 0xad, 0xbe, 0xdd] :: [Word8])
         arr5 = mkByteArray ([0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xdd] 
:: [Word8])
+        arr6 = mkByteArray ([0xde, 0xad, 0x00, 0x01, 0xb0] :: [Word8])
     when (show arr1 /= "[0xde, 0xad, 0xbe, 0xef]") $
         fail $ "ByteArray Show incorrect: "++show arr1
+    when (show arr6 /= "[0xde, 0xad, 0x00, 0x01, 0xb0]") $
+        fail $ "ByteArray Show incorrect: "++ show arr6
     when (compareByteArrays arr3 1 arr4 1 3 /= GT) $
         fail $ "arr3[1,3] should be greater than arr4[1,3]"
     when (compareByteArrays arr3 0 arr4 1 3 /= GT) $

Reply via email to