Currently, settings are managed by a dictionary that's injected into a Thing when it attaches to a server. I think there are some improvements we could make.
- Introduce a setting descriptor. This would make it simple to have a Property that's persisted in the settings file.
- Allow settings to be specified in LabThings config files. This could either be as a default (i.e. set the setting in the file if it's not already set), an overwrite, or an instruction to lock the setting so it becomes read-only. I think there are a few use cases when that would be really helpful.
- Construct a settings model for more reliable serialisation/deserialisation to/from JSON.
Currently, settings are managed by a dictionary that's injected into a Thing when it attaches to a server. I think there are some improvements we could make.