This question had me discover that renaming a Serializable class wipes everything the Inspector knows about it. Is any way at all known to prevent this, be it a trick or an editor extension?
So it turns out you don’t have a problem at all.
Just did this, worked fine
- Opened a script in MonoDevelop
- Renamed the script (file and class name)
- Dragged the new script in to the inspector where it said missing
- Metadata was intact
The ISerializationCallbackReceiver interface was exposed to help dealing with serialization layout changes as well.
I remember some gists (and tweets) where @lucas-meijer-1 talks about manually deserialize old data into a new layout (e.g. one, two, three). That’s before they came up with the current ISerializationCallbackReceiver interface.