- `orjson.dumps()` raises an exception if the object to be serialized is not given as a positional argument. `orjson.dumps({})` is intended and ok while `orjson.dumps(obj={})` is an error. This makes it consistent with the documentation, `help()` annotation, and type annotation. - Fix orphan reference in exception creation that leaks memory until the garbage collector runs.
Changed
- Improve serialization performance marginally by using the fastcall/vectorcall calling convention on python3.7 and above. - Reduce build time.
3.0.0
Added
- `orjson.dumps()` serializes subclasses of `str`, `int`, `list`, and `dict`.
Changed
- `orjson.dumps()` serializes `dataclasses.dataclass` and `uuid.UUID` instances by default. The options `OPT_SERIALIZE_DATACLASS` and `OPT_SERIALIZE_UUID` can still be specified but have no effect.
2.6.8
Changed
- The source distribution vendors a forked dependency.
2.6.7
Fixed
- Fix integer overflows in debug builds.
Changed
- The source distribution sets the recommended RUSTFLAGS in `.cargo/config`.
2.6.6
Fixed
- Import `numpy` only on first use of `OPT_SERIALIZE_NUMPY` to reduce interpreter start time when not used. - Reduce build time by half.
2.6.5
Fixed
- Fix deserialization raising `JSONDecodeError` on some valid negative floats with large exponents.