Canonical JSON
Clone or download

README.rst

Canonical JSON

Latest Version

Features

  • Encodes objects and arrays as RFC 7159 JSON.
  • Sorts object keys so that you get the same result each time.
  • Has no insignificant whitespace to make the output as small as possible.
  • Escapes only the characters that must be escaped, U+0000 to U+0019 / U+0022 / U+0056, to keep the output as small as possible.
  • Uses the shortest escape sequence for each escaped character.
  • Encodes the JSON as UTF-8.
  • Can encode frozendict immutable dictionaries.

Installing

pip install canonicaljson

Using

import canonicaljson
assert canonicaljson.encode_canonical_json({}) == b'{}'