
Has there been consideration to supporting setting the class version on output? This is useful when transmitting classes over a network without requiring both sides to be at the same software version. While the current version support allows the newer side to interpret an older message format, there is no way for the newer side to use the older serialization. This requires an immediate transition of all communicating parties to a common version, which is unreasonable in a heterogeneous network. Implementation probably has a number of issues, as there could be multiple connections, each with its own ideas of supported versions for each class. How the two sides agree on a class version is outside the scope of serialization, although a companion framework may be suitable. But support for specification of version information for use by transmit serialization is required to be able to write such a companion class. There may also need to be some support in the archive templates to associate a particular class with a particular output version.