0.8.5.0was first released as version0.9.0.0. It didn't have any breaking changes though, so it was again released as version0.8.5.0according to PVP. Next breaking release ofbinarywill be version0.10.0.0.
- Add Binary instances for Typeable TypeReps, #131.
- Fix compilation with bytestring < 0.10.4.
binarysupports GHC >= 7.4.2- Performance improvements for
Alternativefunctions. - put/get functions for IEEE-754 floats and doubles, #119.
- Fix performance bugs, #115.
- Binary instances for datatypes in
Data.MonoidandData.Semigroup, #114.
- Replace binary's home grown
BuilderwithData.ByteString.Builder.Data.Binary.Buildernow exportsData.ByteString.Builder.Builder. - Add
putList :: [a] -> Putto theBinaryclass. This is used to be able to use the list writing primitives of the new Builder. This brought a number of speedups; Encoding a String is now 70% faster. [Word8] is 76% faster, which also makes Integer 34% faster. Similar numbers for all [IntXX] and [WordXX]. - Fail gracefully within
Getwhen decodingBoolandOrdering. Previously when decoding invalid data these instances would fail witherror. - Add Binary instance for
Complex a. - Add Monoid and Semigroup instance for
Put.
- Fix compilation error when using older GHC versions and clang. clang barfs on some of its CPP input (#105).
- When using GHC >= 8,
Data.Binary.Get.Getimplements MonadFail and delegates itsfailtoMonadFail.fail.
- Add binary instance for
Data.ByteString.Short. - Add get/put functions for all Int sizes to
Data.Binary.Builder,Data.Binary.GetandData.Binary.Put.
- Address compiler warnings.
- Added binary instance for
VersionfromData.Version. - Added binary instance for
Voidfrom GHC 7.10.1. - Added binary instance for
(Data.Fixed a)from GHC 7.8.1. - Added semigroup instance for
Data.Binary.Builderfrom GHC 8.0.
- Fix compilation for GHC == 7.2.*.
- Added binary instance for GHC.Fingerprint (from GHC >= 7.4).
- Fix performance bug that was noticable when you get a big strict ByteString and the input to the decoder consists of many small chunks.
- Fix memory leak when decoding Double and Float.
- Commit 497a181c083fa9faf7fa3aa64d1d8deb9ac76ecb
- We now require QuickCheck >= 2.8. Remove our version of arbitrarySizedNatural.
- Some invalid UTF-8 strings caused an exception when decoded. Those errors will now now fail in the Get monad instead. See #70. Patch contributed by @ttuegel.
- Add Binary instance for Natural (only with base > 4.8).
- Remove INLINEs from GBinary/GSum methods. These interact very badly with the GHC 7.9.x simplifier. See also;
- Make import of GHC.Base future-proof (haskell/binary#59).
- Fix to compile on GHC 6.10.4 and older (haskell/binary#55).
- Add
isolate :: Int -> Get a -> Get a. - Add
label :: String -> Get a -> Get a.
- Add
lookAheadE :: Get (Either a b) -> Get (Either a b). - Add MonadPlus instance for Get.
- Updates to documentation.
- Add
lookAhead :: Get a -> Get a. - Add
lookAheadM :: Get (Maybe a) -> Get (Maybe a). - Add Alternative instance for Get (provides
<|>). - Add
decodeOrFail :: Binary a => L.ByteString -> Either (L.ByteString, ByteOffset, String) (L.ByteString, ByteOffset, a) - Add
decodeFileOrFail :: Binary a => FilePath -> IO (Either (ByteOffset, String) a). - Remove
Ordclass constraint fromSetandMapBinary instances.
- Add
runGetOrFail :: Get a -> L.ByteString -> Either (L.ByteString, ByteOffset, String) (L.ByteString, ByteOffset, a).
- Documentation tweeks, internal restructuring, more tests.
someandmanymore efficient.- Fix bug where
bytesReadreturned the wrong value. - Documentation improvements.
- Fix bug where a decoder could return with
Partialafter the previous reply wasNothing.