Closed drbenmorgan closed 5 years ago
I add a Point4: now if user code (i.e. classes) relies on class versionning, the library offers some tools to ensure backward compatibility in the user serialization template methods (read an old version of a class and restore it as a new version in memory). It works well but requires care of course from the developper.
Thanks @fmauger, I think that clarifies things.
As discussed in #29, SuperNEMO would like to move to a newer Boost version to resolve serialisation issues on macOS with Boost 1.63, which we've been using for a while now.
I couldn't find anything in the Bayeux or Boost.Serialization docs on what, if any, guarantees there are on forward/backward readability of Bayeux's output files with newer Bayeux/Boost versions. For example
I think it would be useful to have a clear description of what is, and isn't guaranteed here. With real data starting to flow, SuperNEMO need to plan for long-term storage and reprocessing. We can handle fixed software versions for reading, but just need to know to allow that to be accounted for.