From e651f1683355c52caabf6a376a66d8f326eeabe1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20G=C3=B6ttgens?= Date: Wed, 15 Jun 2022 16:40:22 +0200 Subject: [PATCH 1/2] Add Versioning to the savefiles --- deviceonly.proto | 7 +++++++ localonly.proto | 40 +++++++++++++++++++++++++++------------- 2 files changed, 34 insertions(+), 13 deletions(-) diff --git a/deviceonly.proto b/deviceonly.proto index 7971acd..e91be46 100644 --- a/deviceonly.proto +++ b/deviceonly.proto @@ -79,6 +79,13 @@ message ChannelFile { * The channels our node knows about */ repeated Channel channels = 1; + + /* + * A version integer used to invalidate old save files when we make + * incompatible changes This integer is set at build time and is private to + * NodeDB.cpp in the device code. + */ + uint32 version = 2; } /* diff --git a/localonly.proto b/localonly.proto index 38d9542..efd8500 100644 --- a/localonly.proto +++ b/localonly.proto @@ -16,69 +16,83 @@ option java_outer_classname = "LocalOnlyProtos"; message LocalConfig { /* - * TODO: REPLACE + * The part of the config that is specific to the Device */ Config.DeviceConfig device = 1; /* - * TODO: REPLACE + * The part of the config that is specific to the GPS Position */ Config.PositionConfig position = 2; /* - * TODO: REPLACE + * The part of the config that is specific to the Power settings */ Config.PowerConfig power = 3; /* - * TODO: REPLACE + * The part of the config that is specific to the Wifi Settings */ Config.WiFiConfig wifi = 4; /* - * TODO: REPLACE + * The part of the config that is specific to the Display */ Config.DisplayConfig display = 5; /* - * TODO: REPLACE + * The part of the config that is specific to the Lora Radio */ Config.LoRaConfig lora = 6; + + /* + * A version integer used to invalidate old save files when we make + * incompatible changes This integer is set at build time and is private to + * NodeDB.cpp in the device code. + */ + uint32 version = 7; } message LocalModuleConfig { /* - * TODO: REPLACE + * The part of the config that is specific to the MQTT module */ ModuleConfig.MQTTConfig mqtt = 1; /* - * TODO: REPLACE + * The part of the config that is specific to the Serial module */ ModuleConfig.SerialConfig serial = 2; /* - * TODO: REPLACE + * The part of the config that is specific to the ExternalNotification module */ ModuleConfig.ExternalNotificationConfig external_notification = 3; /* - * TODO: REPLACE + * The part of the config that is specific to the Store & Forward module */ ModuleConfig.StoreForwardConfig store_forward = 4; /* - * TODO: REPLACE + * The part of the config that is specific to the RangeTest module */ ModuleConfig.RangeTestConfig range_test = 5; /* - * TODO: REPLACE + * The part of the config that is specific to the Telemetry module */ ModuleConfig.TelemetryConfig telemetry = 6; /* - * TODO: REPLACE + * The part of the config that is specific to the Canned Message module */ ModuleConfig.CannedMessageConfig canned_message = 7; + + /* + * A version integer used to invalidate old save files when we make + * incompatible changes This integer is set at build time and is private to + * NodeDB.cpp in the device code. + */ + uint32 version = 8; } From 3362818449393b9c94070e3ecd551aee673af23e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20G=C3=B6ttgens?= Date: Wed, 15 Jun 2022 16:42:55 +0200 Subject: [PATCH 2/2] Linter says 'no' :-) --- deviceonly.proto | 2 +- localonly.proto | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/deviceonly.proto b/deviceonly.proto index e91be46..f77ac15 100644 --- a/deviceonly.proto +++ b/deviceonly.proto @@ -85,7 +85,7 @@ message ChannelFile { * incompatible changes This integer is set at build time and is private to * NodeDB.cpp in the device code. */ - uint32 version = 2; + uint32 version = 2; } /* diff --git a/localonly.proto b/localonly.proto index efd8500..7f7c944 100644 --- a/localonly.proto +++ b/localonly.proto @@ -50,7 +50,7 @@ message LocalConfig { * incompatible changes This integer is set at build time and is private to * NodeDB.cpp in the device code. */ - uint32 version = 7; + uint32 version = 7; } message LocalModuleConfig {