add cached_property fallback for python < 3.8 compatability
[utils.git] / src / budget_sync / budget_graph.py
index 2bfa27d2a123b8315935870cff6c83a7201c3c69..483f36ec2db89bc9e6fa3e0b9a02668f374b17e6 100644 (file)
@@ -4,12 +4,16 @@ from typing import Callable, Set, Dict, Iterable, Optional, List, Tuple, Union,
 from budget_sync.util import BugStatus, PrettyPrinter
 from budget_sync.money import Money
 from budget_sync.config import Config, Person, Milestone
-from functools import cached_property
 import toml
 import sys
 import enum
 from collections import deque
 from datetime import date, time, datetime
+try:
+    from functools import cached_property
+except ImportError:
+    # compatability with python < 3.8
+    from cached_property import cached_property
 
 
 class BudgetGraphBaseError(Exception):