From 8d42cb92839f5cf90c35d41e08b5fedc7fc3c9e1 Mon Sep 17 00:00:00 2001
From: David Trattnig <david@subsquare.at>
Date: Tue, 26 Mar 2024 14:32:00 +0100
Subject: [PATCH] style: improve json file layout

---
 src/aura_engine/scheduling/timetable.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/aura_engine/scheduling/timetable.py b/src/aura_engine/scheduling/timetable.py
index a4957818..c4ac583b 100644
--- a/src/aura_engine/scheduling/timetable.py
+++ b/src/aura_engine/scheduling/timetable.py
@@ -56,6 +56,7 @@ class TimetableService:
     last_successful_fetch: datetime = None
     cache_location: str = None
     timetable_file: str = None
+    restorable: bool
 
     def __init__(self, cache_location: str):
         """
@@ -66,7 +67,7 @@ class TimetableService:
         """
         self.config = AuraConfig.instance.config
         self.logger = logging.getLogger("engine")
-        jsonpickle.set_encoder_options("json", sort_keys=True, indent=4)
+        jsonpickle.set_encoder_options("json", sort_keys=False, indent=2)
 
         if cache_location[-1] != "/":
             cache_location += "/"
@@ -74,6 +75,7 @@ class TimetableService:
         os.makedirs(cache_location, exist_ok=True)
         self.cache_location = cache_location
         self.timetable_file = self.cache_location + "/timetable.json"
+        self.restorable = False
 
     @synchronized
     def refresh(self):
@@ -125,7 +127,7 @@ class TimetableService:
         """
         try:
             with open(self.timetable_file, "w") as file:
-                file.write(jsonpickle.encode(self.timetable))
+                file.write(jsonpickle.encode(self.timetable, unpicklable=self.restorable))
                 self.logger.info(SU.green("timetable.json stored"))
         except Exception as e:
             self.logger.error(SU.red(f"Error while storing {self.timetable_file}"), e)
-- 
GitLab