- Oslo.versionedobjects is an object model used in Nova to version and serialize objects for remote procedure calls (RPCs). Each change is versioned to allow backwards-compatible evolution.
- Objects define fields and methods, with fields serialized independently of code. Versioning allows controlled schema changes without database changes.
- Objects can be remotely called via an indirection service, with copies sent and returned. This decouples services from databases, enabling independent upgrades.