[squeak-dev] Constructing a patched Monticello package without installing it

Eliot Miranda eliot.miranda at gmail.com
Wed Jan 15 18:41:04 UTC 2014


Hi All,

    I'm trying to deploy Spur in our Newspeak bootstrap at Cadence.  The
starting point for the Newspeak bootstrap) is a Squeak4.3 image.

I have a Squeak4.3 image transformed by the Spur bootstrap to Spur format,
which means it has a few method modifications to three packages:

Collections (changed Character methods now that Characters are immediate)
Kernel (changed Behavior & ClassBuilder changes now that a class's format
has changed, and instantiation interacts with the garbage collector
differently)
System (changed SystemDictionary/SmalltalkImage methods now that there's a
generation scavenger)

The Newspeak bootstrap loads versions of these packages that support
Newspeak.  So the problem is to load the Newspeak versions of these
packages without undoing the Spur bootstrap modifications.  As a quick hack
I could patch the Monticello loader to avoid the modifications (they're
marked by not having a source pointer but could be marked in some other
way, e.g. a pragma).  That's a fine simple approach. But...

I just stumbled across Monticello's MCPatcher and the Backport button which
claims to apply a partial delta to the ancestor of a package.  Does anyone
who understands this code know if the code supports loading a package,
without installing it, applying a partial set of changes (i.e. the relevant
changes form the bootstrap) and saving the package as an mcz?  If it does
then I could construct patched versions of the three packages and
substitute them in the bootstrap instead of using the hack.
-- 
best,
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20140115/eca300f3/attachment.htm


More information about the Squeak-dev mailing list