Skip to content

Add #[serde(flatten)] HashMap fields to serializable objects

eta requested to merge eta/arti:serde-flatten into main

As per #175 (closed), we'd like to be able to handle newer Arti versions storing additional state in the persisted state files, without dropping this data on the floor when we write out changes to these files.

Use the #[serde(flatten)] mechanism to achieve this, by adding catch-all HashMap<String, JsonValue> fields to all structs that are at risk of this happening to them.

Merge request reports