Amertz08 / drf_ujson2

JSON parser and renderer using ujson for Django Rest Framework
MIT License
36 stars 4 forks source link

Original ujson is dead — move to...? #5

Closed hartwork closed 4 years ago

hartwork commented 4 years ago

Hi!

Plain ujson is dead upstream and fails to import due to link errors with recent Python, e.g. 3.7. I have been looking out for ujson-based alternatives and documented my findings at https://github.com/python-rapidjson/python-rapidjson/issues/130#issuecomment-589735859 .

Out of those only ujson-segfault seems like an option to me. There is also resurrection happening at https://github.com/ultrajson/ultrajson-fork starting off https://github.com/esnme/ultrajson/issues/343#issuecomment-589401393 but the code is not on PyPI yet, to my best knowledge.

Best, Sebastian

Amertz08 commented 4 years ago

I didn't even realize that. Good to know. I've looked at a couple others previously out of curiosity and liked the dataclass support of orjson. Looks like there is already solutions out there that use both rapidjson and orjson for DRF integration.

https://github.com/allisson/django-rest-framework-rapidjson https://github.com/brianjbuck/drf_orjson_renderer https://github.com/mauricioabreu/django-rest-framework-orjson

hartwork commented 4 years ago

There is some chance that ujson is among the fastest on average, though: https://github.com/mre/hyperjson#benchmark . That benchmark is from hyperjson… that I have not seen DRF integration for, yet.

hartwork commented 4 years ago

ujson 2.0.0 has just been released, closing as obsolete.