Commits

Bryan O'Sullivan committed 289b9d8

ByteString should not be an instance of the JSON type classes.

We can't know what its encoding is, so it's not safe.

  • Participants
  • Parent commits 863c08c

Comments (0)

Files changed (1)

Data/Aeson/Types.hs

     ) where
 
 import Control.Applicative
-import Data.ByteString (ByteString)
 import Data.Map (Map)
 import Data.Text (Text, pack, unpack)
-import Data.Text.Encoding (decodeUtf8, encodeUtf8)
 import Data.Time.Clock (UTCTime)
 import Data.Time.Format (formatTime, parseTime)
 import Data.Vector (Vector)
     fromJSON _          = empty
     {-# INLINE fromJSON #-}
 
-instance ToJSON ByteString where
-    toJSON = String . decodeUtf8
-
-instance FromJSON ByteString where
-    fromJSON (String t) = pure (encodeUtf8 t)
-    fromJSON _          = empty
-
 mapA :: (Applicative f) => (t -> f a) -> [t] -> f [a]
 mapA f = go
   where