Chris, didn't you do something about this in Squeak? It would be nice to keep consistent if possible...
Eliot (phone) On Feb 20, 2015, at 6:41 AM, Marcus Denker <[email protected]> wrote: > Hi, > > The current Pharo4 contains *a lot* of MCVersionInfo instances. > > MCVersionInfo allInstances size > > 11095 > > The hold on to strings, Date, UUID… a lot of stuff. All in all, this is > around 10% of the current > image. > > If you do > > MCVersionInfo allInstances do: [ :each | each instVarNamed: 'ancestors' put: > nil ]. > > you image is a couple of MB smaller. > > In the past, when this information started to be >8MB, we did that. With the > bad effect > that we can not merge anymore across this boundary: we kill the past. > > Now this information is of course continained in the last MCZ file, too (all > of them contain > the complete history…) > > So would the following work? > > -> we set the “ancestors” of MCVersionInfo to #reload > -> the accessor, when it sees #reload, takes the name, deduces from that the > package, > and goes to the repo to load the ancestry info from the MCZFile. > > This means that e.g when saving a MCZFile, it would first re-create history > info and then save > it completely (like now), yet someone who just uses the system would never > need to have this > info in the image. > > Marcus
