Hello community,

here is the log from the commit of package ghc-tagged for openSUSE:Factory 
checked in at 2016-04-28 16:57:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-tagged (Old)
 and      /work/SRC/openSUSE:Factory/.ghc-tagged.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc-tagged"

Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-tagged/ghc-tagged.changes    2016-02-01 
19:57:24.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.ghc-tagged.new/ghc-tagged.changes       
2016-04-28 17:02:14.000000000 +0200
@@ -1,0 +2,7 @@
+Tue Apr 26 08:55:10 UTC 2016 - [email protected]
+
+- update to 0.8.4
+* Backport the Alternative, MonadPlus, and MonadZip instances for Proxy from 
base-4.9
+* Add Bits, FiniteBits, IsString, and Storable instances for Tagged
+
+-------------------------------------------------------------------

Old:
----
  tagged-0.8.3.tar.gz

New:
----
  tagged-0.8.4.tar.gz

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

Other differences:
------------------
++++++ ghc-tagged.spec ++++++
--- /var/tmp/diff_new_pack.Lk24DN/_old  2016-04-28 17:02:16.000000000 +0200
+++ /var/tmp/diff_new_pack.Lk24DN/_new  2016-04-28 17:02:16.000000000 +0200
@@ -19,7 +19,7 @@
 %global pkg_name tagged
 
 Name:           ghc-tagged
-Version:        0.8.3
+Version:        0.8.4
 Release:        0
 Summary:        Haskell 98 phantom types to avoid unsafely passing dummy 
arguments
 License:        BSD-3-Clause

++++++ tagged-0.8.3.tar.gz -> tagged-0.8.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tagged-0.8.3/CHANGELOG.markdown 
new/tagged-0.8.4/CHANGELOG.markdown
--- old/tagged-0.8.3/CHANGELOG.markdown 2016-01-26 22:10:01.000000000 +0100
+++ new/tagged-0.8.4/CHANGELOG.markdown 2016-04-23 21:48:24.000000000 +0200
@@ -1,3 +1,8 @@
+0.8.4
+-----
+* Backport the `Alternative`, `MonadPlus`, and `MonadZip` instances for 
`Proxy` from `base-4.9`
+* Add `Bits`, `FiniteBits`, `IsString`, and `Storable` instances for `Tagged`
+
 0.8.3
 -----
 * Manual `Generic1` support to work around a bug in GHC 7.6
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tagged-0.8.3/old/Data/Proxy.hs 
new/tagged-0.8.4/old/Data/Proxy.hs
--- old/tagged-0.8.3/old/Data/Proxy.hs  2016-01-26 22:10:01.000000000 +0100
+++ new/tagged-0.8.4/old/Data/Proxy.hs  2016-04-23 21:48:24.000000000 +0200
@@ -35,7 +35,11 @@
     , KProxy(..)
     ) where
 
-import Control.Applicative (Applicative(..))
+import Control.Applicative (Applicative(..), Alternative(..))
+import Control.Monad (MonadPlus(..))
+#if MIN_VERSION_base(4,4,0)
+import Control.Monad.Zip (MonadZip(..))
+#endif
 #ifdef MIN_VERSION_deepseq
 import Control.DeepSeq (NFData(..))
 #endif
@@ -165,6 +169,12 @@
     _ <*> _ = Proxy
     {-# INLINE (<*>) #-}
 
+instance Alternative Proxy where
+    empty = Proxy
+    {-# INLINE empty #-}
+    _ <|> _ = Proxy
+    {-# INLINE (<|>) #-}
+
 instance Monoid (Proxy s) where
     mempty = Proxy
     {-# INLINE mempty #-}
@@ -179,6 +189,18 @@
     _ >>= _ = Proxy
     {-# INLINE (>>=) #-}
 
+instance MonadPlus Proxy where
+    mzero = Proxy
+    {-# INLINE mzero #-}
+    mplus _ _ = Proxy
+    {-# INLINE mplus #-}
+
+#if MIN_VERSION_base(4,4,0)
+instance MonadZip Proxy where
+    mzipWith _ _ _ = Proxy
+    {-# INLINE mzipWith #-}
+#endif
+
 instance Foldable Proxy where
     foldMap _ _ = mempty
     {-# INLINE foldMap #-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tagged-0.8.3/src/Data/Tagged.hs 
new/tagged-0.8.4/src/Data/Tagged.hs
--- old/tagged-0.8.3/src/Data/Tagged.hs 2016-01-26 22:10:01.000000000 +0100
+++ new/tagged-0.8.4/src/Data/Tagged.hs 2016-04-23 21:48:24.000000000 +0200
@@ -11,6 +11,8 @@
 {-# LANGUAGE Trustworthy #-}
 #endif
 #endif
+
+{-# OPTIONS_GHC -fno-warn-deprecations #-}
 ----------------------------------------------------------------------------
 -- |
 -- Module     : Data.Tagged
@@ -48,6 +50,7 @@
 import Data.Traversable (Traversable(..))
 import Data.Monoid
 #endif
+import Data.Bits
 import Data.Foldable (Foldable(..))
 #ifdef MIN_VERSION_deepseq
 import Control.DeepSeq (NFData(..))
@@ -66,6 +69,9 @@
 #if __GLASGOW_HASKELL__ >= 800
 import Data.Semigroup (Semigroup(..))
 #endif
+import Data.String (IsString(..))
+import Foreign.Ptr (castPtr)
+import Foreign.Storable (Storable(..))
 #if __GLASGOW_HASKELL__ >= 702
 import GHC.Generics (Generic)
 #if __GLASGOW_HASKELL__ >= 706
@@ -293,6 +299,60 @@
     isIEEE (Tagged x) = isIEEE x
     atan2 = liftA2 atan2
 
+instance Bits a => Bits (Tagged s a) where
+    Tagged a .&. Tagged b = Tagged (a .&. b)
+    Tagged a .|. Tagged b = Tagged (a .|. b)
+    xor (Tagged a) (Tagged b) = Tagged (xor a b)
+    complement (Tagged a) = Tagged (complement a)
+    shift (Tagged a) i = Tagged (shift a i)
+    shiftL (Tagged a) i = Tagged (shiftL a i)
+    shiftR (Tagged a) i = Tagged (shiftR a i)
+    rotate (Tagged a) i = Tagged (rotate a i)
+    rotateL (Tagged a) i = Tagged (rotateL a i)
+    rotateR (Tagged a) i = Tagged (rotateR a i)
+    bit i = Tagged (bit i)
+    setBit (Tagged a) i = Tagged (setBit a i)
+    clearBit (Tagged a) i = Tagged (clearBit a i)
+    complementBit (Tagged a) i = Tagged (complementBit a i)
+    testBit (Tagged a) i = testBit a i
+    isSigned (Tagged a) = isSigned a
+    bitSize (Tagged a) = bitSize a -- deprecated, but still required :(
+#if __GLASGOW_HASKELL__ >= 704
+    unsafeShiftL (Tagged a) i = Tagged (unsafeShiftL a i)
+    unsafeShiftR (Tagged a) i = Tagged (unsafeShiftR a i)
+    popCount (Tagged a) = popCount a
+#endif
+#if __GLASGOW_HASKELL__ >= 708
+    bitSizeMaybe (Tagged a) = bitSizeMaybe a
+    zeroBits = Tagged zeroBits
+#endif
+
+#if __GLASGOW_HASKELL__ >= 708
+instance FiniteBits a => FiniteBits (Tagged s a) where
+    finiteBitSize (Tagged a) = finiteBitSize a
+# if __GLASGOW_HASKELL__ >= 710
+    countLeadingZeros (Tagged a) = countLeadingZeros a
+    countTrailingZeros (Tagged a) = countTrailingZeros a
+# endif
+#endif
+
+instance IsString a => IsString (Tagged s a) where
+    fromString = Tagged . fromString
+
+instance Storable a => Storable (Tagged s a) where
+    sizeOf t = sizeOf a
+      where
+        Tagged a = Tagged undefined `asTypeOf` t
+    alignment t = alignment a
+      where
+        Tagged a = Tagged undefined `asTypeOf` t
+    peek ptr = Tagged <$> peek (castPtr ptr)
+    poke ptr (Tagged a) = poke (castPtr ptr) a
+    peekElemOff ptr i = Tagged <$> peekElemOff (castPtr ptr) i
+    pokeElemOff ptr i (Tagged a) = pokeElemOff (castPtr ptr) i a
+    peekByteOff ptr i = Tagged <$> peekByteOff (castPtr ptr) i
+    pokeByteOff ptr i (Tagged a) = pokeByteOff (castPtr ptr) i a
+
 -- | Some times you need to change the tag you have lying around.
 -- Idiomatic usage is to make a new combinator for the relationship between the
 -- tags that you want to enforce, and define that combinator using 'retag'.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tagged-0.8.3/tagged.cabal 
new/tagged-0.8.4/tagged.cabal
--- old/tagged-0.8.3/tagged.cabal       2016-01-26 22:10:01.000000000 +0100
+++ new/tagged-0.8.4/tagged.cabal       2016-04-23 21:48:24.000000000 +0200
@@ -1,5 +1,5 @@
 name:           tagged
-version:        0.8.3
+version:        0.8.4
 license:        BSD3
 license-file:   LICENSE
 author:         Edward A. Kmett


Reply via email to