goran at krampe.se
goran at krampe.se
Fri May 5 07:15:08 UTC 2006
=?ISO-8859-1?Q?st=E9phane_ducasse?= <ducasse at iam.unibe.ch> wrote:
> > I think you can use "SMSqueakMap default loadUpdates"
> > if you want to load the changes from a script. For the 3.9#7027
> > this updates
> > "SMBase-md.72" to "SMBase-gk.83" and
> > "SMLoader-md.29" to "SMLoader-gk.30"
> > (the MCZ files can also be found on http://squeak.krampe.se)
> Ok I was not aware of that.
Mmmm, no - #loadUpdates loads a new map - it doesn't upgrade the
You might be thinking about the "upgrade packages" menu choices in the
loader (#upgradeInstalledPackages and friends) but those methods aren't
selective - they try to upgrade everything.
> > After that use "SMSqueakMap clear" to reset the class variable
> > and run a GC. But maybe Göran has a better solution.
Yes I have. :) The #clear method will toast all your installation info
(=what package releases are installed, in fact the whole SM install
history). It is much better to use #purge.
I sat up last night and did two things:
1. Made sure that "SMSqueakMap bootStrap" will work in a 3.9-7029 image.
It worked for me, at least without an "sm" dir present when executing
2. Prepared a changeset that does the same thing essentially - for Steph
to apply. In retrospect I don't think it will end up being any different
at all from the effect of running "SMSqueakMap bootStrap. SMSqueakMap
default purge", but I will email it to Steph anyway, might be nice to
have a .cs in the history etc. Unfortunately I left it at home on my
Linux laptop - will email it when I get home today. :)
The changes involve three things IIRC:
- Fixed underscores using FixUnderscores>>fixPackage:.
- Made sure that SMLoader calls synchWithDisk when opening. Otherwise we
get into trouble if the map instance is purged (=exists but has no
content) and still not more than 10 days old.
- Tuned a method in SMPackageRelease avoiding the costly "SystemVersion
new" (due to the costly "Date today" if I am correct). This improves the
opening time for the SMLoader from 3-4 seconds to 1-1.5 on my box.
More information about the Squeak-dev