[Python-Dev] Dropping bytes "support" in json

Guido van Rossum guido at python.org
Thu Apr 9 02:36:20 CEST 2009

On Wed, Apr 8, 2009 at 4:10 AM, Antoine Pitrou <solipsis at pitrou.net> wrote:
> We're in the process of forward-porting the recent (massive) json updates to
> 3.1, and we are also thinking of dropping remnants of support of the bytes type
> in the json library (in 3.1, again). This bytes support almost didn't work at
> all, but there was a lot of C and Python code for it nevertheless. We're also
> thinking of dropping the "encoding" argument in the various APIs, since it is
> useless.
> Under the new situation, json would only ever allow str as input, and output str
> as well. By posting here, I want to know whether anybody would oppose this
> (knowing, once again, that bytes support is already broken in the current py3k
> trunk).
> The bug entry is: http://bugs.python.org/issue4136

I'm kind of surprised that a serialization protocol like JSON wouldn't
support reading/writing bytes (as the serialized format -- I don't
care about having bytes as values, since JavaScript doesn't have
something equivalent AFAIK, and hence JSON doesn't allow it IIRC).
Marshal and Pickle, for example, *always* treat the serialized format
as bytes. And since in most cases it will be sent over a socket, at
some point the serialized representation *will* be bytes, I presume.
What makes supporting this hard?

--Guido van Rossum (home page: http://www.python.org/~guido/)

More information about the Python-Dev mailing list