Skip to content

Instantly share code, notes, and snippets.

@hvr
Created September 21, 2013 08:29
Show Gist options
  • Save hvr/6648575 to your computer and use it in GitHub Desktop.
Save hvr/6648575 to your computer and use it in GitHub Desktop.
API deltas for `base`

API Delta Report for version 4.7.0.0

Modules removed from API version 4.7.0.0:

- Control.Concurrent.SampleVar
- Data.HashTable

Modules added in API version 4.7.0.0:

+ Data.OldTypeable
+ Data.OldTypeable.Internal
+ Data.Proxy
+ Data.Type.Equality
+ GHC.Profiling

Changes in "Control.Applicative"

Removed from "Control.Applicative" in API version 4.7.0.0:

- class Functor f => Applicative f where *> = liftA2 (const id) <* = liftA2 const

Added to "Control.Applicative" in API version 4.7.0.0:

+ class Functor f => Applicative f where (*>) = liftA2 (const id) (<*) = liftA2 const
+ instance Applicative (Proxy *)
+ instance Eq a => Eq (ZipList a)
+ instance Ord a => Ord (ZipList a)
+ instance Read a => Read (ZipList a)
+ instance Show a => Show (ZipList a)

Changes in "Control.Arrow"

Removed from "Control.Arrow" in API version 4.7.0.0:

- instance Monad m => Category (Kleisli m)

Added to "Control.Arrow" in API version 4.7.0.0:

+ instance Monad m => Category * (Kleisli m)

Changes in "Control.Category"

Removed from "Control.Category" in API version 4.7.0.0:

- instance Category (->)

Added to "Control.Category" in API version 4.7.0.0:

+ instance Category * (->)
+ instance Category k ((:=:) k)

Changes in "Control.Concurrent"

Removed from "Control.Concurrent" in API version 4.7.0.0:

- forkIOUnmasked :: IO () -> IO ThreadId
- mergeIO :: [a] -> [a] -> IO [a]
- nmergeIO :: [[a]] -> IO [a]

Added to "Control.Concurrent" in API version 4.7.0.0:

+ threadWaitReadSTM :: Fd -> IO (STM (), IO ())
+ threadWaitWriteSTM :: Fd -> IO (STM (), IO ())

Changes in "Control.Concurrent.Chan"

Removed from "Control.Concurrent.Chan" in API version 4.7.0.0:

- instance Typeable1 Chan

Added to "Control.Concurrent.Chan" in API version 4.7.0.0:

+ instance Typeable (* -> *) Chan

Changes in "Control.Concurrent.MVar"

Added to "Control.Concurrent.MVar" in API version 4.7.0.0:

+ tryReadMVar :: MVar a -> IO (Maybe a)

Changes in "Control.Concurrent.QSem"

Removed from "Control.Concurrent.QSem" in API version 4.7.0.0:

- instance Eq QSem
- instance Typeable QSem

Changes in "Control.Concurrent.QSemN"

Removed from "Control.Concurrent.QSemN" in API version 4.7.0.0:

- instance Eq QSemN
- instance Typeable QSemN

Added to "Control.Concurrent.QSemN" in API version 4.7.0.0:

+ instance Typeable * QSemN

Changes in "Control.Exception"

Removed from "Control.Exception" in API version 4.7.0.0:

- block :: IO a -> IO a
- blocked :: IO Bool
- data ErrorCall
- unblock :: IO a -> IO a

Added to "Control.Exception" in API version 4.7.0.0:

+ SomeAsyncException :: e -> SomeAsyncException
+ asyncExceptionFromException :: Exception e => SomeException -> Maybe e
+ asyncExceptionToException :: Exception e => e -> SomeException
+ data SomeAsyncException
+ newtype ErrorCall

Changes in "Control.Exception.Base"

Removed from "Control.Exception.Base" in API version 4.7.0.0:

- block :: IO a -> IO a
- blocked :: IO Bool
- data ErrorCall
- instance Typeable NestedAtomically
- instance Typeable NoMethodError
- instance Typeable NonTermination
- instance Typeable PatternMatchFail
- instance Typeable RecConError
- instance Typeable RecSelError
- instance Typeable RecUpdError
- unblock :: IO a -> IO a

Added to "Control.Exception.Base" in API version 4.7.0.0:

+ SomeAsyncException :: e -> SomeAsyncException
+ asyncExceptionFromException :: Exception e => SomeException -> Maybe e
+ asyncExceptionToException :: Exception e => e -> SomeException
+ data SomeAsyncException
+ instance Typeable * NestedAtomically
+ instance Typeable * NoMethodError
+ instance Typeable * NonTermination
+ instance Typeable * PatternMatchFail
+ instance Typeable * RecConError
+ instance Typeable * RecSelError
+ instance Typeable * RecUpdError
+ newtype ErrorCall

Changes in "Control.Monad"

Removed from "Control.Monad" in API version 4.7.0.0:

- class Functor f where <$ = fmap . const

Added to "Control.Monad" in API version 4.7.0.0:

+ class Functor f where (<$) = fmap . const

Changes in "Control.Monad.Instances"

Removed from "Control.Monad.Instances" in API version 4.7.0.0:

- class Functor f where <$ = fmap . const

Added to "Control.Monad.Instances" in API version 4.7.0.0:

+ class Functor f where (<$) = fmap . const

Changes in "Control.Monad.ST"

Removed from "Control.Monad.ST" in API version 4.7.0.0:

- unsafeIOToST :: IO a -> ST s a
- unsafeInterleaveST :: ST s a -> ST s a
- unsafeSTToIO :: ST s a -> IO a

Changes in "Control.Monad.ST.Lazy"

Removed from "Control.Monad.ST.Lazy" in API version 4.7.0.0:

- unsafeIOToST :: IO a -> ST s a
- unsafeInterleaveST :: ST s a -> ST s a

Changes in "Data.Bits"

Removed from "Data.Bits" in API version 4.7.0.0:

- class Eq a => Bits a where x shift i | i < 0 = x `shiftR` (- i) | i > 0 = x `shiftL` i | otherwise = x x rotate i | i < 0 = x `rotateR` (- i) | i > 0 = x `rotateL` i | otherwise = x x setBit i = x .|. bit i x clearBit i = x .&. complement (bit i) x complementBit i = x `xor` bit i x shiftL i = x `shift` i x unsafeShiftL i = x `shiftL` i x shiftR i = x `shift` (- i) x unsafeShiftR i = x `shiftR` i x rotateL i = x `rotate` i x rotateR i = x `rotate` (- i)

Added to "Data.Bits" in API version 4.7.0.0:

+ bitSizeMaybe :: Bits a => a -> Maybe Int
+ class Bits b => FiniteBits b
+ class Eq a => Bits a where x `shift` i | i < 0 = x `shiftR` (- i) | i > 0 = x `shiftL` i | otherwise = x x `rotate` i | i < 0 = x `rotateR` (- i) | i > 0 = x `rotateL` i | otherwise = x x `setBit` i = x .|. bit i x `clearBit` i = x .&. complement (bit i) x `complementBit` i = x `xor` bit i x `shiftL` i = x `shift` i x `unsafeShiftL` i = x `shiftL` i x `shiftR` i = x `shift` (- i) x `unsafeShiftR` i = x `shiftR` i x `rotateL` i = x `rotate` i x `rotateR` i = x `rotate` (- i)
+ finiteBitSize :: FiniteBits b => b -> Int
+ instance FiniteBits Int
+ instance FiniteBits Word

Changes in "Data.Bool"

Added to "Data.Bool" in API version 4.7.0.0:

+ bool :: a -> a -> Bool -> a

Changes in "Data.Complex"

Removed from "Data.Complex" in API version 4.7.0.0:

- instance Typeable1 Complex

Added to "Data.Complex" in API version 4.7.0.0:

+ instance Typeable (* -> *) Complex

Changes in "Data.Data"

Removed from "Data.Data" in API version 4.7.0.0:

- dataCast1 :: (Data a, Typeable1 t) => (forall d. Data d => c (t d)) -> Maybe (c a)
- dataCast2 :: (Data a, Typeable2 t) => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a)
- instance (Typeable a, Data b, Ix a) => Data (Array a b)
- instance Typeable a => Data (ForeignPtr a)
- instance Typeable a => Data (Ptr a)
- mkFloatConstr :: DataType -> Double -> Constr
- mkIntConstr :: DataType -> Integer -> Constr
- mkNorepType :: String -> DataType
- mkStringConstr :: DataType -> String -> Constr
- mkStringType :: String -> DataType

Added to "Data.Data" in API version 4.7.0.0:

+ dataCast1 :: (Data a, Typeable t) => (forall d. Data d => c (t d)) -> Maybe (c a)
+ dataCast2 :: (Data a, Typeable t) => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a)
+ instance (Data a, Typeable * a) => Data (ForeignPtr a)
+ instance (Data a, Typeable * a) => Data (Ptr a)
+ instance (Typeable * a, Data a) => Data ((:=:) * a a)
+ instance (Typeable * a, Data a, Data b, Ix a) => Data (Array a b)
+ instance Data Version
+ instance Data t => Data (Proxy * t)

Changes in "Data.Dynamic"

Removed from "Data.Dynamic" in API version 4.7.0.0:

- instance Typeable Dynamic

Added to "Data.Dynamic" in API version 4.7.0.0:

+ instance Typeable * Dynamic

Changes in "Data.Either"

Removed from "Data.Either" in API version 4.7.0.0:

- instance Typeable2 Either

Added to "Data.Either" in API version 4.7.0.0:

+ instance Typeable (* -> * -> *) Either
+ isLeft :: Either a b -> Bool
+ isRight :: Either a b -> Bool

Changes in "Data.Fixed"

Removed from "Data.Fixed" in API version 4.7.0.0:

- data Fixed a
- instance Typeable E0
- instance Typeable E1
- instance Typeable E12
- instance Typeable E2
- instance Typeable E3
- instance Typeable E6
- instance Typeable E9
- instance Typeable a => Data (Fixed a)
- instance Typeable1 Fixed

Added to "Data.Fixed" in API version 4.7.0.0:

+ MkFixed :: Integer -> Fixed a
+ instance Typeable (* -> *) Fixed
+ instance Typeable * E0
+ instance Typeable * E1
+ instance Typeable * E12
+ instance Typeable * E2
+ instance Typeable * E3
+ instance Typeable * E6
+ instance Typeable * E9
+ instance Typeable * a => Data (Fixed a)
+ newtype Fixed a

Changes in "Data.Foldable"

Removed from "Data.Foldable" in API version 4.7.0.0:

- foldl :: Foldable t => (a -> b -> a) -> a -> t b -> a
- foldl' :: Foldable t => (a -> b -> a) -> a -> t b -> a
- foldlM :: (Foldable t, Monad m) => (a -> b -> m a) -> a -> t b -> m a

Added to "Data.Foldable" in API version 4.7.0.0:

+ foldl :: Foldable t => (b -> a -> b) -> b -> t a -> b
+ foldl' :: Foldable t => (b -> a -> b) -> b -> t a -> b
+ foldlM :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m b
+ instance Foldable ((,) a)
+ instance Foldable (Either a)
+ instance Foldable (Proxy *)

Changes in "Data.Functor"

Removed from "Data.Functor" in API version 4.7.0.0:

- class Functor f where <$ = fmap . const

Added to "Data.Functor" in API version 4.7.0.0:

+ ($>) :: Functor f => f a -> b -> f b
+ class Functor f where (<$) = fmap . const
+ void :: Functor f => f a -> f ()

Changes in "Data.List"

Removed from "Data.List" in API version 4.7.0.0:

- foldl :: (a -> b -> a) -> a -> [b] -> a
- foldl' :: (a -> b -> a) -> a -> [b] -> a
- genericIndex :: Integral a => [b] -> a -> b
- genericLength :: Num i => [b] -> i
- genericSplitAt :: Integral i => i -> [b] -> ([b], [b])
- scanl :: (a -> b -> a) -> a -> [b] -> [a]

Added to "Data.List" in API version 4.7.0.0:

+ foldl :: (b -> a -> b) -> b -> [a] -> b
+ foldl' :: (b -> a -> b) -> b -> [a] -> b
+ genericIndex :: Integral i => [a] -> i -> a
+ genericLength :: Num i => [a] -> i
+ genericSplitAt :: Integral i => i -> [a] -> ([a], [a])
+ scanl :: (b -> a -> b) -> b -> [a] -> [b]

Changes in "Data.Traversable"

Added to "Data.Traversable" in API version 4.7.0.0:

+ instance Traversable ((,) a)
+ instance Traversable (Either a)
+ instance Traversable (Proxy *)

Changes in "Data.Typeable"

Removed from "Data.Typeable" in API version 4.7.0.0:

- class Typeable1 t
- class Typeable2 t
- class Typeable3 t
- class Typeable4 t
- class Typeable5 t
- class Typeable6 t
- class Typeable7 t
- data TypeRepKey
- gcast1 :: (Typeable1 t, Typeable1 t') => c (t a) -> Maybe (c (t' a))
- gcast2 :: (Typeable2 t, Typeable2 t') => c (t a b) -> Maybe (c (t' a b))
- instance [overlap ok] Eq TypeRepKey
- instance [overlap ok] Ord TypeRepKey
- mkTyCon :: String -> TyCon
- typeOf1 :: Typeable1 t => t a -> TypeRep
- typeOf1Default :: (Typeable2 t, Typeable a) => t a b -> TypeRep
- typeOf2 :: Typeable2 t => t a b -> TypeRep
- typeOf2Default :: (Typeable3 t, Typeable a) => t a b c -> TypeRep
- typeOf3 :: Typeable3 t => t a b c -> TypeRep
- typeOf3Default :: (Typeable4 t, Typeable a) => t a b c d -> TypeRep
- typeOf4 :: Typeable4 t => t a b c d -> TypeRep
- typeOf4Default :: (Typeable5 t, Typeable a) => t a b c d e -> TypeRep
- typeOf5 :: Typeable5 t => t a b c d e -> TypeRep
- typeOf5Default :: (Typeable6 t, Typeable a) => t a b c d e f -> TypeRep
- typeOf6 :: Typeable6 t => t a b c d e f -> TypeRep
- typeOf6Default :: (Typeable7 t, Typeable a) => t a b c d e f g -> TypeRep
- typeOf7 :: Typeable7 t => t a b c d e f g -> TypeRep
- typeOfDefault :: (Typeable1 t, Typeable a) => t a -> TypeRep
- typeRepKey :: TypeRep -> IO TypeRepKey

Added to "Data.Typeable" in API version 4.7.0.0:

+ Proxy :: Proxy t
+ Refl :: a :=: a
+ data (:=:) a b
+ data Proxy t
+ gcast1 :: (Typeable t, Typeable t') => c (t a) -> Maybe (c (t' a))
+ gcast2 :: (Typeable t, Typeable t') => c (t a b) -> Maybe (c (t' a b))
+ typeOf1 :: Typeable t => t a -> TypeRep
+ typeOf2 :: Typeable t => t a b -> TypeRep
+ typeOf3 :: Typeable t => t a b c -> TypeRep
+ typeOf4 :: Typeable t => t a b c d -> TypeRep
+ typeOf5 :: Typeable t => t a b c d e -> TypeRep
+ typeOf6 :: Typeable t => t a b c d e f -> TypeRep
+ typeOf7 :: Typeable t => t a b c d e f g -> TypeRep
+ typeRep :: Typeable a => proxy a -> TypeRep

Changes in "Data.Typeable.Internal"

Removed from "Data.Typeable.Internal" in API version 4.7.0.0:

- class Typeable1 t
- class Typeable2 t
- class Typeable3 t
- class Typeable4 t
- class Typeable5 t
- class Typeable6 t
- class Typeable7 t
- instance [overlap ok] (Typeable1 s, Typeable a) => Typeable (s a)
- instance [overlap ok] (Typeable2 s, Typeable a) => Typeable1 (s a)
- instance [overlap ok] (Typeable3 s, Typeable a) => Typeable2 (s a)
- instance [overlap ok] (Typeable4 s, Typeable a) => Typeable3 (s a)
- instance [overlap ok] (Typeable5 s, Typeable a) => Typeable4 (s a)
- instance [overlap ok] (Typeable6 s, Typeable a) => Typeable5 (s a)
- instance [overlap ok] (Typeable7 s, Typeable a) => Typeable6 (s a)
- instance [overlap ok] Typeable ()
- instance [overlap ok] Typeable Bool
- instance [overlap ok] Typeable Char
- instance [overlap ok] Typeable Double
- instance [overlap ok] Typeable Float
- instance [overlap ok] Typeable Int
- instance [overlap ok] Typeable Int16
- instance [overlap ok] Typeable Int32
- instance [overlap ok] Typeable Int64
- instance [overlap ok] Typeable Int8
- instance [overlap ok] Typeable Integer
- instance [overlap ok] Typeable Ordering
- instance [overlap ok] Typeable RealWorld
- instance [overlap ok] Typeable TyCon
- instance [overlap ok] Typeable TypeRep
- instance [overlap ok] Typeable Word
- instance [overlap ok] Typeable Word16
- instance [overlap ok] Typeable Word32
- instance [overlap ok] Typeable Word64
- instance [overlap ok] Typeable Word8
- instance [overlap ok] Typeable1 FunPtr
- instance [overlap ok] Typeable1 IO
- instance [overlap ok] Typeable1 IORef
- instance [overlap ok] Typeable1 MVar
- instance [overlap ok] Typeable1 Maybe
- instance [overlap ok] Typeable1 Ptr
- instance [overlap ok] Typeable1 Ratio
- instance [overlap ok] Typeable1 StablePtr
- instance [overlap ok] Typeable1 []
- instance [overlap ok] Typeable2 (,)
- instance [overlap ok] Typeable2 (->)
- instance [overlap ok] Typeable2 Array
- instance [overlap ok] Typeable2 IOArray
- instance [overlap ok] Typeable2 ST
- instance [overlap ok] Typeable2 STRef
- instance [overlap ok] Typeable3 (,,)
- instance [overlap ok] Typeable3 STArray
- instance [overlap ok] Typeable4 (,,,)
- instance [overlap ok] Typeable5 (,,,,)
- instance [overlap ok] Typeable6 (,,,,,)
- instance [overlap ok] Typeable7 (,,,,,,)
- typeOf1 :: Typeable1 t => t a -> TypeRep
- typeOf1Default :: (Typeable2 t, Typeable a) => t a b -> TypeRep
- typeOf2 :: Typeable2 t => t a b -> TypeRep
- typeOf2Default :: (Typeable3 t, Typeable a) => t a b c -> TypeRep
- typeOf3 :: Typeable3 t => t a b c -> TypeRep
- typeOf3Default :: (Typeable4 t, Typeable a) => t a b c d -> TypeRep
- typeOf4 :: Typeable4 t => t a b c d -> TypeRep
- typeOf4Default :: (Typeable5 t, Typeable a) => t a b c d e -> TypeRep
- typeOf5 :: Typeable5 t => t a b c d e -> TypeRep
- typeOf5Default :: (Typeable6 t, Typeable a) => t a b c d e f -> TypeRep
- typeOf6 :: Typeable6 t => t a b c d e f -> TypeRep
- typeOf6Default :: (Typeable7 t, Typeable a) => t a b c d e f g -> TypeRep
- typeOf7 :: Typeable7 t => t a b c d e f g -> TypeRep
- typeOfDefault :: (Typeable1 t, Typeable a) => t a -> TypeRep

Added to "Data.Typeable.Internal" in API version 4.7.0.0:

+ Proxy :: Proxy t
+ data Proxy t
+ instance [overlap ok] (Typeable (k1 -> k) s, Typeable k1 a) => Typeable k (s a)
+ instance [overlap ok] Typeable (* -> * -> * -> * -> * -> * -> * -> *) (,,,,,,)
+ instance [overlap ok] Typeable (* -> * -> * -> * -> * -> * -> *) (,,,,,)
+ instance [overlap ok] Typeable (* -> * -> * -> * -> * -> *) (,,,,)
+ instance [overlap ok] Typeable (* -> * -> * -> * -> *) (,,,)
+ instance [overlap ok] Typeable (* -> * -> * -> *) (,,)
+ instance [overlap ok] Typeable (* -> * -> * -> *) STArray
+ instance [overlap ok] Typeable (* -> * -> *) (,)
+ instance [overlap ok] Typeable (* -> * -> *) (->)
+ instance [overlap ok] Typeable (* -> * -> *) Array
+ instance [overlap ok] Typeable (* -> * -> *) ST
+ instance [overlap ok] Typeable (* -> * -> *) STRef
+ instance [overlap ok] Typeable (* -> *) FunPtr
+ instance [overlap ok] Typeable (* -> *) IO
+ instance [overlap ok] Typeable (* -> *) Maybe
+ instance [overlap ok] Typeable (* -> *) Ptr
+ instance [overlap ok] Typeable (* -> *) Ratio
+ instance [overlap ok] Typeable (* -> *) []
+ instance [overlap ok] Typeable (k -> *) (Proxy k)
+ instance [overlap ok] Typeable (k -> k -> *) ((:=:) k)
+ instance [overlap ok] Typeable * ()
+ instance [overlap ok] Typeable * Bool
+ instance [overlap ok] Typeable * Char
+ instance [overlap ok] Typeable * Double
+ instance [overlap ok] Typeable * Float
+ instance [overlap ok] Typeable * Int
+ instance [overlap ok] Typeable * Integer
+ instance [overlap ok] Typeable * Ordering
+ instance [overlap ok] Typeable * RealWorld
+ instance [overlap ok] Typeable * TyCon
+ instance [overlap ok] Typeable * TypeRep
+ instance [overlap ok] Typeable * Word
+ instance [overlap ok] Typeable * Word16
+ instance [overlap ok] Typeable * Word32
+ instance [overlap ok] Typeable * Word64
+ instance [overlap ok] Typeable * Word8
+ typeOf1 :: Typeable t => t a -> TypeRep
+ typeOf2 :: Typeable t => t a b -> TypeRep
+ typeOf3 :: Typeable t => t a b c -> TypeRep
+ typeOf4 :: Typeable t => t a b c d -> TypeRep
+ typeOf5 :: Typeable t => t a b c d e -> TypeRep
+ typeOf6 :: Typeable t => t a b c d e f -> TypeRep
+ typeOf7 :: Typeable t => t a b c d e f g -> TypeRep
+ typeRep :: Typeable a => proxy a -> TypeRep

Changes in "Data.Unique"

Removed from "Data.Unique" in API version 4.7.0.0:

- instance Typeable Unique

Added to "Data.Unique" in API version 4.7.0.0:

+ instance Typeable * Unique

Changes in "Data.Version"

Removed from "Data.Version" in API version 4.7.0.0:

- instance Typeable Version

Added to "Data.Version" in API version 4.7.0.0:

+ instance Typeable * Version

Changes in "Data.Word"

Added to "Data.Word" in API version 4.7.0.0:

+ byteSwap16 :: Word16 -> Word16
+ byteSwap32 :: Word32 -> Word32
+ byteSwap64 :: Word64 -> Word64

Changes in "Debug.Trace"

Added to "Debug.Trace" in API version 4.7.0.0:

+ traceId :: String -> String
+ traceM :: Monad m => String -> m ()
+ traceMarker :: String -> a -> a
+ traceMarkerIO :: String -> IO ()
+ traceShowId :: Show a => a -> a
+ traceShowM :: (Show a, Monad m) => a -> m ()

Changes in "Foreign"

Removed from "Foreign" in API version 4.7.0.0:

- unsafeForeignPtrToPtr :: ForeignPtr a -> Ptr a
- unsafePerformIO :: IO a -> a

Changes in "Foreign.C.Error"

Added to "Foreign.C.Error" in API version 4.7.0.0:

+ eNOTSUP :: Errno

Changes in "Foreign.C.Types"

Removed from "Foreign.C.Types" in API version 4.7.0.0:

- instance Typeable CChar
- instance Typeable CClock
- instance Typeable CDouble
- instance Typeable CFloat
- instance Typeable CInt
- instance Typeable CIntMax
- instance Typeable CIntPtr
- instance Typeable CLLong
- instance Typeable CLong
- instance Typeable CPtrdiff
- instance Typeable CSChar
- instance Typeable CSUSeconds
- instance Typeable CShort
- instance Typeable CSigAtomic
- instance Typeable CSize
- instance Typeable CTime
- instance Typeable CUChar
- instance Typeable CUInt
- instance Typeable CUIntMax
- instance Typeable CUIntPtr
- instance Typeable CULLong
- instance Typeable CULong
- instance Typeable CUSeconds
- instance Typeable CUShort
- instance Typeable CWchar

Added to "Foreign.C.Types" in API version 4.7.0.0:

+ instance Typeable * CChar
+ instance Typeable * CClock
+ instance Typeable * CDouble
+ instance Typeable * CFloat
+ instance Typeable * CInt
+ instance Typeable * CIntMax
+ instance Typeable * CIntPtr
+ instance Typeable * CLLong
+ instance Typeable * CLong
+ instance Typeable * CPtrdiff
+ instance Typeable * CSChar
+ instance Typeable * CSUSeconds
+ instance Typeable * CShort
+ instance Typeable * CSigAtomic
+ instance Typeable * CSize
+ instance Typeable * CTime
+ instance Typeable * CUChar
+ instance Typeable * CUInt
+ instance Typeable * CUIntMax
+ instance Typeable * CUIntPtr
+ instance Typeable * CULLong
+ instance Typeable * CULong
+ instance Typeable * CUSeconds
+ instance Typeable * CUShort
+ instance Typeable * CWchar

Changes in "Foreign.Marshal"

Removed from "Foreign.Marshal" in API version 4.7.0.0:

- unsafeLocalState :: IO a -> a

Changes in "Foreign.Ptr"

Removed from "Foreign.Ptr" in API version 4.7.0.0:

- instance Typeable IntPtr
- instance Typeable WordPtr

Added to "Foreign.Ptr" in API version 4.7.0.0:

+ instance Typeable * IntPtr
+ instance Typeable * WordPtr

Changes in "GHC.Conc"

Removed from "GHC.Conc" in API version 4.7.0.0:

- forkIOUnmasked :: IO () -> IO ThreadId
- forkOnIO :: Int -> IO () -> IO ThreadId
- forkOnIOUnmasked :: Int -> IO () -> IO ThreadId

Added to "GHC.Conc" in API version 4.7.0.0:

+ ioManagerCapabilitiesChanged :: IO ()
+ threadWaitReadSTM :: Fd -> IO (STM (), IO ())
+ threadWaitWriteSTM :: Fd -> IO (STM (), IO ())

Changes in "GHC.Conc.IO"

Added to "GHC.Conc.IO" in API version 4.7.0.0:

+ ioManagerCapabilitiesChanged :: IO ()
+ threadWaitReadSTM :: Fd -> IO (STM (), IO ())
+ threadWaitWriteSTM :: Fd -> IO (STM (), IO ())

Changes in "GHC.Conc.Sync"

Removed from "GHC.Conc.Sync" in API version 4.7.0.0:

- forkIOUnmasked :: IO () -> IO ThreadId
- forkOnIO :: Int -> IO () -> IO ThreadId
- forkOnIOUnmasked :: Int -> IO () -> IO ThreadId
- instance Typeable ThreadId
- instance Typeable1 STM
- instance Typeable1 TVar

Added to "GHC.Conc.Sync" in API version 4.7.0.0:

+ instance Typeable (* -> *) STM
+ instance Typeable (* -> *) TVar
+ instance Typeable * ThreadId

Changes in "GHC.Event"

Removed from "GHC.Event" in API version 4.7.0.0:

- loop :: EventManager -> IO ()
- new :: IO EventManager
- registerTimeout :: EventManager -> Int -> TimeoutCallback -> IO TimeoutKey
- shutdown :: EventManager -> IO ()
- step :: EventManager -> TimeoutQueue -> IO (Bool, TimeoutQueue)
- unregisterTimeout :: EventManager -> TimeoutKey -> IO ()
- updateTimeout :: EventManager -> TimeoutKey -> Int -> IO ()

Added to "GHC.Event" in API version 4.7.0.0:

+ getSystemTimerManager :: IO TimerManager
+ new :: Bool -> IO EventManager
+ registerTimeout :: TimerManager -> Int -> TimeoutCallback -> IO TimeoutKey
+ unregisterTimeout :: TimerManager -> TimeoutKey -> IO ()
+ updateTimeout :: TimerManager -> TimeoutKey -> Int -> IO ()

Changes in "GHC.Exts"

Removed from "GHC.Exts" in API version 4.7.0.0:

- instance Typeable SpecConstrAnnotation

Added to "GHC.Exts" in API version 4.7.0.0:

+ class IsList l where type family Item l fromListN _ = fromList
+ fromList :: IsList l => [Item l] -> l
+ fromListN :: IsList l => Int -> [Item l] -> l
+ instance IsList [a]
+ instance Typeable * SpecConstrAnnotation
+ isTrue# :: Int# -> Bool
+ toList :: IsList l => l -> [Item l]

Changes in "GHC.Fingerprint"

Added to "GHC.Fingerprint" in API version 4.7.0.0:

+ getFileHash :: FilePath -> IO Fingerprint

Changes in "GHC.Fingerprint.Type"

Added to "GHC.Fingerprint.Type" in API version 4.7.0.0:

+ instance Show Fingerprint

Changes in "GHC.Generics"

Removed from "GHC.Generics" in API version 4.7.0.0:

- (:*:) :: f p -> g p -> :*: f g p
- Comp1 :: f (g p) -> :.: f g p
- L1 :: (f p) -> :+: f g p
- R1 :: (g p) -> :+: f g p
- class Datatype d
- unComp1 :: :.: f g p -> f (g p)

Added to "GHC.Generics" in API version 4.7.0.0:

+ (:*:) :: f p -> g p -> (:*:) f g p
+ Comp1 :: f (g p) -> (:.:) f g p
+ L1 :: (f p) -> (:+:) f g p
+ R1 :: (g p) -> (:+:) f g p
+ class Datatype d where isNewtype _ = False
+ instance (Eq (f p), Eq (g p)) => Eq ((:*:) f g p)
+ instance (Eq (f p), Eq (g p)) => Eq ((:+:) f g p)
+ instance (Read (f p), Read (g p)) => Read ((:*:) f g p)
+ instance (Read (f p), Read (g p)) => Read ((:+:) f g p)
+ instance (Show (f p), Show (g p)) => Show ((:*:) f g p)
+ instance (Show (f p), Show (g p)) => Show ((:+:) f g p)
+ instance Constructor C1_0:*:
+ instance Constructor C1_0:+:
+ instance Constructor C1_0:.:
+ instance Constructor C1_0Arity
+ instance Constructor C1_0Associativity
+ instance Constructor C1_0Fixity
+ instance Constructor C1_0K1
+ instance Constructor C1_0M1
+ instance Constructor C1_0Par1
+ instance Constructor C1_0Proxy
+ instance Constructor C1_0Rec1
+ instance Constructor C1_0U1
+ instance Constructor C1_1:+:
+ instance Constructor C1_1Arity
+ instance Constructor C1_1Associativity
+ instance Constructor C1_1Fixity
+ instance Constructor C1_2Associativity
+ instance Datatype D1:*:
+ instance Datatype D1:+:
+ instance Datatype D1:.:
+ instance Datatype D1Arity
+ instance Datatype D1Associativity
+ instance Datatype D1Fixity
+ instance Datatype D1K1
+ instance Datatype D1M1
+ instance Datatype D1Par1
+ instance Datatype D1Proxy
+ instance Datatype D1Rec1
+ instance Datatype D1U1
+ instance Eq (U1 p)
+ instance Eq (f (g p)) => Eq ((:.:) f g p)
+ instance Eq (f p) => Eq (M1 i c f p)
+ instance Eq (f p) => Eq (Rec1 f p)
+ instance Eq c => Eq (K1 i c p)
+ instance Eq p => Eq (Par1 p)
+ instance Generic ((:*:) f g p)
+ instance Generic ((:+:) f g p)
+ instance Generic ((:.:) f g p)
+ instance Generic (K1 i c p)
+ instance Generic (M1 i c f p)
+ instance Generic (Par1 p)
+ instance Generic (Proxy * t)
+ instance Generic (Rec1 f p)
+ instance Generic (U1 p)
+ instance Generic Arity
+ instance Generic Associativity
+ instance Generic Fixity
+ instance Read (U1 p)
+ instance Read (f (g p)) => Read ((:.:) f g p)
+ instance Read (f p) => Read (M1 i c f p)
+ instance Read (f p) => Read (Rec1 f p)
+ instance Read c => Read (K1 i c p)
+ instance Read p => Read (Par1 p)
+ instance Selector S1_0_0:.:
+ instance Selector S1_0_0K1
+ instance Selector S1_0_0M1
+ instance Selector S1_0_0Par1
+ instance Selector S1_0_0Rec1
+ instance Show (U1 p)
+ instance Show (f (g p)) => Show ((:.:) f g p)
+ instance Show (f p) => Show (M1 i c f p)
+ instance Show (f p) => Show (Rec1 f p)
+ instance Show c => Show (K1 i c p)
+ instance Show p => Show (Par1 p)
+ isNewtype :: Datatype d => t d (f :: * -> *) a -> Bool
+ unComp1 :: (:.:) f g p -> f (g p)

Changes in "GHC.IO.Encoding"

Removed from "GHC.IO.Encoding" in API version 4.7.0.0:

- BufferCodec :: (Buffer from -> Buffer to -> IO (CodingProgress, Buffer from, Buffer to)) -> (Buffer from -> Buffer to -> IO (Buffer from, Buffer to)) -> IO () -> IO state -> (state -> IO ()) -> BufferCodec from to state
- encode :: BufferCodec from to state -> Buffer from -> Buffer to -> IO (CodingProgress, Buffer from, Buffer to)

Added to "GHC.IO.Encoding" in API version 4.7.0.0:

+ BufferCodec :: CodeBuffer from to -> (Buffer from -> Buffer to -> IO (Buffer from, Buffer to)) -> IO () -> IO state -> (state -> IO ()) -> BufferCodec from to state
+ encode :: BufferCodec from to state -> CodeBuffer from to

Changes in "GHC.IO.Encoding.Types"

Removed from "GHC.IO.Encoding.Types" in API version 4.7.0.0:

- BufferCodec :: (Buffer from -> Buffer to -> IO (CodingProgress, Buffer from, Buffer to)) -> (Buffer from -> Buffer to -> IO (Buffer from, Buffer to)) -> IO () -> IO state -> (state -> IO ()) -> BufferCodec from to state
- encode :: BufferCodec from to state -> Buffer from -> Buffer to -> IO (CodingProgress, Buffer from, Buffer to)
- type DecodeBuffer = Buffer Word8 -> Buffer Char -> IO (CodingProgress, Buffer Word8, Buffer Char)
- type EncodeBuffer = Buffer Char -> Buffer Word8 -> IO (CodingProgress, Buffer Char, Buffer Word8)

Added to "GHC.IO.Encoding.Types" in API version 4.7.0.0:

+ BufferCodec :: CodeBuffer from to -> (Buffer from -> Buffer to -> IO (Buffer from, Buffer to)) -> IO () -> IO state -> (state -> IO ()) -> BufferCodec from to state
+ encode :: BufferCodec from to state -> CodeBuffer from to
+ type CodeBuffer from to = Buffer from -> Buffer to -> IO (CodingProgress, Buffer from, Buffer to)
+ type DecodeBuffer = CodeBuffer Word8 Char
+ type EncodeBuffer = CodeBuffer Char Word8

Changes in "GHC.Stack"

Added to "GHC.Stack" in API version 4.7.0.0:

+ errorWithStackTrace :: String -> a

Changes in "GHC.TypeLits"

Removed from "GHC.TypeLits" in API version 4.7.0.0:

- IsEven :: !(Sing (n + 1)) -> IsEven ((2 * n) + 2)
- IsEvenZero :: IsEven 0
- IsOdd :: !(Sing n) -> IsEven ((2 * n) + 1)
- class (<=) (m :: Nat) (n :: Nat)
- class (SingI a, SingE (Kind :: k) rep) => SingRep (a :: k) rep | a -> rep
- class kparam ~ Kind => SingE (kparam :: k) rep | kparam -> rep
- data IsEven :: Nat -> *
- fromSing :: SingE kparam rep => Sing (a :: k) -> rep
- instance (SingE k (Kind k) rep, Show rep) => Show (Sing k a)
- instance (SingI k a, SingE k (Kind k) rep) => SingRep k a rep
- instance (SingRep k a rep, Read rep, Eq rep) => Read (Sing k a)
- instance Show (IsEven n)
- instance SingE Nat (Kind Nat) Integer
- instance SingE Symbol (Kind Symbol) String
- isEven :: Sing n -> IsEven n
- singThat :: SingRep a rep => (rep -> Bool) -> Maybe (Sing a)
- type Kind = Any
- unsafeSingNat :: Integer -> Sing (n :: Nat)
- unsafeSingSymbol :: String -> Sing (n :: Symbol)

Added to "GHC.TypeLits" in API version 4.7.0.0:

+ KindParam :: KindIs
+ Refl :: a :~: a
+ SomeSing :: proxy n -> SomeSing (kp :: KindIs k)
+ Succ :: Nat1 -> Nat1
+ Zero :: Nat1
+ class (SingI a, SingE (KindOf a)) => SingRep (a :: k)
+ class kp ~ KindParam => ToSing (kp :: KindIs k)
+ class kparam ~ KindParam => SingE (kparam :: KindIs k) where type family DemoteRep kparam :: *
+ data (:~:) :: k -> k -> *
+ data KindIs (a :: *)
+ data Nat1
+ data SomeSing :: KindIs k -> *
+ eqSingBool :: Sing (m :: Bool) -> Sing (n :: Bool) -> Maybe (m :~: n)
+ eqSingNat :: Sing (m :: Nat) -> Sing (n :: Nat) -> Maybe (m :~: n)
+ eqSingSym :: Sing (m :: Symbol) -> Sing (n :: Symbol) -> Maybe (m :~: n)
+ fromSing :: SingE kparam => Sing (a :: k) -> DemoteRep kparam
+ instance (SingE k (KindOf k a), Show (Demote k a)) => Show (Sing k a)
+ instance (SingI k a, SingE k (KindOf k a)) => SingRep k a
+ instance (SingRep k a, Read (Demote k a), Eq (Demote k a)) => Read (Sing k a)
+ instance Show ((:~:) k a b)
+ instance SingE Bool ('KindParam Bool)
+ instance SingE Nat ('KindParam Nat)
+ instance SingE Symbol ('KindParam Symbol)
+ instance SingI Bool 'False
+ instance SingI Bool 'True
+ instance ToSing Bool ('KindParam Bool)
+ instance ToSing Nat ('KindParam Nat)
+ instance ToSing Symbol ('KindParam Symbol)
+ singByProxy :: SingI n => proxy n -> Sing n
+ singThat :: SingRep a => (Demote a -> Bool) -> Maybe (Sing a)
+ toSing :: ToSing kp => DemoteRep kp -> Maybe (SomeSing kp)
+ type (<=) x y = (x <=? y) ~ True
+ type Demote a = DemoteRep (KindOf a)
+ type KindOf (a :: k) = (KindParam :: KindIs k)
+ type SomeNat = SomeSing (KindParam :: KindIs Nat)
+ type SomeSymbol = SomeSing (KindParam :: KindIs Symbol)

Changes in "Numeric"

Added to "Numeric" in API version 4.7.0.0:

+ showFFloatAlt :: RealFloat a => Maybe Int -> a -> ShowS
+ showGFloatAlt :: RealFloat a => Maybe Int -> a -> ShowS

Changes in "Prelude"

Removed from "Prelude" in API version 4.7.0.0:

- class (Real a, Enum a) => Integral a where n quot d = q where (q, _) = quotRem n d n rem d = r where (_, r) = quotRem n d n div d = q where (q, _) = divMod n d n mod d = r where (_, r) = divMod n d divMod n d = if signum r == negate (signum d) then (q - 1, r + d) else qr where qr@(q, r) = quotRem n d
- class Functor f where <$ = fmap . const
- foldl :: (a -> b -> a) -> a -> [b] -> a
- scanl :: (a -> b -> a) -> a -> [b] -> [a]

Added to "Prelude" in API version 4.7.0.0:

+ class (Real a, Enum a) => Integral a where n `quot` d = q where (q, _) = quotRem n d n `rem` d = r where (_, r) = quotRem n d n `div` d = q where (q, _) = divMod n d n `mod` d = r where (_, r) = divMod n d divMod n d = if signum r == negate (signum d) then (q - 1, r + d) else qr where qr@(q, r) = quotRem n d
+ class Functor f where (<$) = fmap . const
+ foldl :: (b -> a -> b) -> b -> [a] -> b
+ scanl :: (b -> a -> b) -> b -> [a] -> [b]

Changes in "System.Console.GetOpt"

Added to "System.Console.GetOpt" in API version 4.7.0.0:

+ instance [safe] Functor ArgDescr
+ instance [safe] Functor ArgOrder
+ instance [safe] Functor OptDescr

Changes in "System.Environment"

Added to "System.Environment" in API version 4.7.0.0:

+ setEnv :: String -> String -> IO ()
+ unsetEnv :: String -> IO ()

Changes in "System.Mem.StableName"

Removed from "System.Mem.StableName" in API version 4.7.0.0:

- instance Typeable1 StableName

Added to "System.Mem.StableName" in API version 4.7.0.0:

+ eqStableName :: StableName a -> StableName b -> Bool
+ instance Typeable (* -> *) StableName

Changes in "System.Posix.Types"

Removed from "System.Posix.Types" in API version 4.7.0.0:

- instance Typeable CCc
- instance Typeable CDev
- instance Typeable CGid
- instance Typeable CIno
- instance Typeable CMode
- instance Typeable CNlink
- instance Typeable COff
- instance Typeable CPid
- instance Typeable CRLim
- instance Typeable CSpeed
- instance Typeable CSsize
- instance Typeable CTcflag
- instance Typeable CUid
- instance Typeable Fd

Added to "System.Posix.Types" in API version 4.7.0.0:

+ instance Typeable * CCc
+ instance Typeable * CDev
+ instance Typeable * CGid
+ instance Typeable * CIno
+ instance Typeable * CMode
+ instance Typeable * CNlink
+ instance Typeable * COff
+ instance Typeable * CPid
+ instance Typeable * CRLim
+ instance Typeable * CSpeed
+ instance Typeable * CSsize
+ instance Typeable * CTcflag
+ instance Typeable * CUid
+ instance Typeable * Fd

Changes in "System.Timeout"

Removed from "System.Timeout" in API version 4.7.0.0:

- instance Typeable Timeout

Added to "System.Timeout" in API version 4.7.0.0:

+ instance Typeable * Timeout

Changes in "Text.Printf"

Removed from "Text.Printf" in API version 4.7.0.0:

- class PrintfArg a
- instance [safe] HPrintfType (IO a)
- instance [safe] PrintfType (IO a)

Added to "Text.Printf" in API version 4.7.0.0:

+ FieldFormat :: Maybe Int -> Maybe Int -> Maybe FormatAdjustment -> Maybe FormatSign -> Bool -> String -> Char -> FieldFormat
+ FormatParse :: String -> Char -> String -> FormatParse
+ LeftAdjust :: FormatAdjustment
+ SignPlus :: FormatSign
+ SignSpace :: FormatSign
+ ZeroPad :: FormatAdjustment
+ class PrintfArg a where parseFormat _ (c : cs) = FormatParse "" c cs parseFormat _ "" = errorShortFormat
+ data FieldFormat
+ data FormatAdjustment
+ data FormatParse
+ data FormatSign
+ errorBadArgument :: a
+ errorBadFormat :: Char -> a
+ errorMissingArgument :: a
+ errorShortFormat :: a
+ fmtAdjust :: FieldFormat -> Maybe FormatAdjustment
+ fmtAlternate :: FieldFormat -> Bool
+ fmtChar :: FieldFormat -> Char
+ fmtModifiers :: FieldFormat -> String
+ fmtPrecision :: FieldFormat -> Maybe Int
+ fmtSign :: FieldFormat -> Maybe FormatSign
+ fmtWidth :: FieldFormat -> Maybe Int
+ formatArg :: PrintfArg a => a -> FieldFormatter
+ formatChar :: Char -> FieldFormatter
+ formatInt :: (Integral a, Bounded a) => a -> FieldFormatter
+ formatInteger :: Integer -> FieldFormatter
+ formatRealFloat :: RealFloat a => a -> FieldFormatter
+ formatString :: IsChar a => [a] -> FieldFormatter
+ fpChar :: FormatParse -> Char
+ fpModifiers :: FormatParse -> String
+ fpRest :: FormatParse -> String
+ fromChar :: IsChar c => Char -> c
+ instance [safe] a ~ () => HPrintfType (IO a)
+ instance [safe] a ~ () => PrintfType (IO a)
+ parseFormat :: PrintfArg a => a -> ModifierParser
+ perror :: String -> a
+ toChar :: IsChar c => c -> Char
+ type FieldFormatter = FieldFormat -> ShowS
+ type ModifierParser = String -> FormatParse
+ vFmt :: Char -> FieldFormat -> FieldFormat

Changes in "Text.Read.Lex"

Added to "Text.Read.Lex" in API version 4.7.0.0:

+ expect :: Lexeme -> ReadP ()
+ numberToFixed :: Integer -> Number -> Maybe (Integer, Integer)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment