Open
Description
First, love your lib, saw it on reddit and have replaced yours with my json config saver.
However, for me, the order of the keys is important and in function serialize_data_to_json_bytes in io_unsafe.py you always sort the keys. This hurts.
My personal opinion is not to do that there ? If you want to sort your keys then that could/should be done prior.
Kinda separate the purpose of serialize the data and ordering the data.
Alternatively you could add an option when creating the instance if you want an alternative solution.
Just my two cents.
for now I patch it with
def serialize_data_to_json_bytes(data: dict) -> bytes:
from dictdatabase import config
if config.use_orjson:
import orjson
option = (orjson.OPT_INDENT_2 if config.indent else 0)
return orjson.dumps(data, option=option)
else:
db_dump = json.dumps(data, indent=config.indent, sort_keys=False)
return db_dump.encode()
def io_write(db_name: str, data: dict):
data_bytes = serialize_data_to_json_bytes(data)
io_bytes.write(db_name, data_bytes)
def write(self):
super(SessionFileFull, self).write()
io_write(self.db_name, self.data_handle)
SessionFileFull.write = write
Metadata
Metadata
Assignees
Labels
No labels