On 28 May 2015, at 18:18, PBKResearch <peter@pbkresearch.co.uk> wrote:
Hello
I have found a way round this problem, but it seems messy and uncomfortable, so I thought I should ask what is the right way to do it.
I have just changed from using Moose 5.0 (Pharo 3.0, update: #30862) to Moose 5.1 (Pharo 4.0, update: #40613). I had a rather complex dictionary structure in a Playground in 5.0, which I wanted to reproduce exactly in the 5.1 image. Looking around, Fuel looked like the obvious tool to save and restore the structure. It saved OK in 5.0, but when I tried to re-materialize it in 5.1 I got an error message: âFLBadVersion: Materialization error. Unexpected stream versâ (canât see the rest of the message). I could see from the debugger output that Fuel was looking for version 194 and seeing 193. Using a brute force approach, I hacked FLSerializer class >> currentVersion in the Moose 5.0 image to return 194 instead 193, then tried again, and of course everything worked OK.
My question is what should I have done? How can I move data from one image to another of a later version? If Fuel has no backward compatibility, is there another tool I can use?
Depending on what the data is, STON can be quite useful. https://ci.inria.fr/pharo-contribution/job/EnterprisePharoBook/lastSuccessfu...
Thanks for any advice
Peter Kenny