JSON does not preserve the order of OrderedDict
#95385 caused a regression in JSON serialization of OrderedDict when use the C implementation.
>>> import collections, json >>> od = collections.OrderedDict(a=1, b=2) >>> od.move_to_end('a') >>> od OrderedDict([('b', 2), ('a', 1)]) >>> json.dumps(od) '{"a": 1, "b": 2}'
With the pure Python implementation, as well as in older Pythons, you get '{"b": 2, "a": 1}'.