Need some ideas how to proceed here: I ended up with a minor problem today where I had to release a new version of a module with a very minor bug fix. Instances of that class get serialized and passed between machines.
The module's version got updated for the new release as it should. No change in structure of the class at all. Unfortunately, at release time still had some objects of that class cached (or really "in-flight") and the code below started throwing errors: else { ($meta->version == $version) || confess "Class ($class) versions don't match." . " got=($version) available=($meta_version)"; } I had to hack that "confess" to a "warn" to let processing continue. There's going to be times when I have to update code (and thus versions) and release to production where serialized objects are in flight. If I change the structure of the object (say add an attribute) then I'll have to handle that in my newer code. But, I'm not sure it makes sense to have MooseX::Storage so restrictive. A change in versions doesn't mean incompatible serialized objects. Is that version check too agressive? Any ideas how to handle this better? -- Bill Moseley mose...@hank.org