Mailing List Archive

[issue14570] Document json "sort_keys" parameter properly
Michal Nowikowski <godfryd@gmail.com> added the comment:

In json module there are dump/dumps methods which internally instantiate encoder class JSONEncoder (or some other user-defined encoder clas).
They look as follows:

json.dump(obj, fp,
skipkeys=False,
ensure_ascii=True,
check_circular=True,
allow_nan=True,
cls=None,
indent=None,
separators=None,
default=None,
**kw)

json.JSONEncoder(skipkeys=False,
ensure_ascii=True,
check_circular=True,
allow_nan=True,
sort_keys=False,
indent=None,
separators=None,
default=None)

Some of dump/dumps arguments are passed to encoder class:
- skipkeys
- ensure_ascii
- check_circular
- allow_nan
- indent
- separators
- default

And it looks that sort_keys is just missing in keyword args in dump/dumps method.
But it still can be passed implicitly using **kw arg.

I would propose to do:
- add explicitly sort_keys keyword arg to dump/dumps methods
- add passing it to encoder class
- and adjust documentation accordingly.

----------
nosy: +godfryd

_______________________________________
Python tracker <report@bugs.python.org>
<http://bugs.python.org/issue14570>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/list-python-bugs%40lists.gossamer-threads.com
[issue14570] Document json "sort_keys" parameter properly [ In reply to ]
Michal Nowikowski <godfryd@gmail.com> added the comment:

Attached a patch.
To preserve current order of arguments in dumps/dump functions sort_keys argument has been added to the end of arguments just before **kw.

----------
keywords: +patch
Added file: http://bugs.python.org/file25427/json-sort-keys.patch

_______________________________________
Python tracker <report@bugs.python.org>
<http://bugs.python.org/issue14570>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/list-python-bugs%40lists.gossamer-threads.com