Not So Simple JSON encoder/decoder
Project description
nssjson is a (not so) simple, fast, complete, correct and extensible JSON encoder and decoder for Python 2.5+ and Python 3.3+. It is pure Python code with no dependencies, but includes an optional C extension for a serious speed boost.
nssjson is a fork of simplejson that fulfills my need of having a good performance JSON encoder/decoder able to handle also Python’s datetime and UUID, even if with an admittedly non-standard and faulty heuristic that was not considered within the scope of the original product.
Practically, the difference is that, out of the box, you have:
>>> import datetime, uuid
>>> import nssjson
>>> now = datetime.datetime.now()
>>> uid = uuid.uuid1()
>>> nssjson.loads(
... nssjson.dumps([uid, now], iso_datetime=True, handle_uuid=True),
... iso_datetime=True, handle_uuid=True) == [uid, now]
True
Changes
0.7 (2015-08-07)
Optionally serialize/deserialize UUIDs
0.6 (2015-05-31)
Avoid broken JSON output for int/long/float subclasses reimplementing the __str__() and/or __repr__() methods
0.5 (2014-12-21)
Fix memory leak when an error occurs encoding dict items
Overhaul of load() and dump() signatures
Drop Sphinx documentation
0.4 (2014-06-28)
Complete the fix against negative index parameter to raw_decode()
Fix C encoder initialization
Catch invalid item_sort_key argument to C encoder
0.3 (2014-04-16)
Update version in nssjson/__init__.py at release time
Catch negative index parameter to the C scan_once() function, mimicking http://hg.python.org/cpython/rev/ef52ae167555
0.2 (2014-03-22)
Remove dead code noticed by Anatoly Techtonik
Use an interned instance of the UTC timezone instead of passing it as an argument to function/constructors
0.1 (2014-03-19)
Fork of simplejson 3.3.3
Add support for Python datetimes, dates and times (see https://github.com/simplejson/simplejson/issues/86 and https://github.com/simplejson/simplejson/pull/89)
Fix compatibility with Python 3.4 unittests
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file nssjson-0.7.tar.gz
.
File metadata
- Download URL: nssjson-0.7.tar.gz
- Upload date:
- Size: 62.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4970f7742596df652f287c01c96ed397b4ce17a2e38d4947f6423d2c61dbdb01 |
|
MD5 | 996aff07203b52fcf19fa21397c7d3b1 |
|
BLAKE2b-256 | 99e91f4b50de2dcd4a72ec1e31dc03c781aca33abe71c221e975dde1e1e65e4e |