import time def _v1_to_v2(data): data["cat"]["fullness"] = 100 data["cat"]["last_updated"] = time.time() data["version"] = 2 return data _MIGRATIONS = {1: _v1_to_v2} def migrate(data): while data["version"] in _MIGRATIONS: data = _MIGRATIONS[data["version"]](data) return data