# HG changeset patch # User Bob Ippolito <bob@redivi.com> # Date 1315102567 25200 # Sat Sep 03 19:16:07 2011 -0700 # Node ID 76fb7d24552c91406b555b14e727cd5e838cc017 # Parent 451987014e15e75ba1a4bcd61399e2a361418b06 update docs with namedtuple encoding to JSON object diff --git a/CHANGES.txt b/CHANGES.txt --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,5 +1,8 @@ -Version 2.1.7 released 2011-XX-XX +Version 2.2.0 released 2011-XX-XX +* namedtuple (or other tuple subclasses with _asdict methods) are now + encoded as JSON objects rather than arrays. + https://github.com/simplejson/simplejson/pull/6 * JSONDecodeError is now raised instead of ValueError when a document ends with an opening quote and the C speedups are in use. https://github.com/simplejson/simplejson/issues/15 diff --git a/index.rst b/index.rst --- a/index.rst +++ b/index.rst @@ -399,7 +399,7 @@ +-------------------+---------------+ | Python | JSON | +===================+===============+ - | dict | object | + | dict, namedtuple | object | +-------------------+---------------+ | list, tuple | array | +-------------------+---------------+ @@ -414,6 +414,9 @@ | None | null | +-------------------+---------------+ + .. versionchanged:: 2.2.0 + Changed *namedtuple* encoding from JSON array to object. + To extend this to recognize other objects, subclass and implement a :meth:`default` method with another method that returns a serializable object for ``o`` if possible, otherwise it should call the superclass implementation diff --git a/simplejson/encoder.py b/simplejson/encoder.py --- a/simplejson/encoder.py +++ b/simplejson/encoder.py @@ -80,7 +80,7 @@ +-------------------+---------------+ | Python | JSON | +===================+===============+ - | dict | object | + | dict, namedtuple | object | +-------------------+---------------+ | list, tuple | array | +-------------------+---------------+