1
0
mirror of https://github.com/craigerl/aprsd.git synced 2026-03-03 05:30:11 -05:00

Fix JSON serialization of UnknownPacket in stats

The SimpleJSONEncoder didn't handle dataclasses like UnknownPacket,
causing a TypeError when saving stats to disk. Added support for
dataclasses using dataclasses.asdict().
This commit is contained in:
Walter Boring 2026-02-27 23:40:14 -05:00
parent fcfb349d29
commit 698d218572

View File

@ -2,6 +2,7 @@ import datetime
import decimal
import json
import sys
from dataclasses import asdict, is_dataclass
from aprsd.packets import core
@ -63,6 +64,8 @@ class SimpleJSONEncoder(json.JSONEncoder):
return str(obj)
elif isinstance(obj, core.Packet):
return obj.to_dict()
elif is_dataclass(obj):
return asdict(obj)
else:
return super().default(obj)