
Jason Dusek ha scritto:
To add to the confusion, I forked `bytestringparser` when I wrote the `json-b` package. The fork is here:
http://hackage.haskell.org/package/bytestringparser-temporary/
I have added a number of things to original as well as fixing some problems with it.
The reason I went with the older package is that the new one depended on stuff that wouldn't build on Hackage
I installed attoparsec yesterday without problems.
so I was like "whatever"; however, I now consider that it might have been better to work off the newer package.
A subtle error, corrected in my version, seems yet to be present in the `attoparsec-0.7.2`, in an operator used internally to build up the result set.
{-# LINE 132 "Data/Attoparsec/Internal.hs" #-} -- | Turn our split representation back into a normal lazy ByteString. (+:) :: SB.ByteString -> LB.ByteString -> LB.ByteString sb +: lb | SB.null sb = lb | otherwise = LB.Chunk sb lb
Where this operator showed up in `bytestringparser`, I replaced `LB.Chunk` with the smart constructor, `LB.chunk`, to ensure that the "no empty chunks" invariant of lazy `ByteString`s was followed (I discovered this failing one evening when I was fleshing out the JSON parser).
Did you try to contact the author/maintainer? This test can be added to the test suite. Thanks Manlio