Using Monticello and SqueakSource and distributing packages
Avi Bryant
avi at beta4.com
Tue Feb 17 21:08:54 UTC 2004
On Feb 17, 2004, at 12:52 PM, Timothy Rowledge wrote:
>> SM2 is going into the update stream, which includes a simple
>> bootstrap installer for MC packages. So when 3.7 is released you
>> will indeed be able to load a .mcz into a stock image.
> But would that be a sensible thing to do. If, as I get the impression,
> an mcz file is a full history of development then it would probably be
> a daft thing to distribute generally. No? Surely pulling out a
> current-version .sar is more generally useful?
It's not a full history of development - it's a snapshot of the code at
a single point in time, with a UUID identifying that snapshot, and a
record of the UUIDs of all the previous snapshots it's descended from.
So it's a great thing to distribute, IMO.
>> Temporary methods is an interesting use case. That's not something
>> you can do with a .mcz. What do you need it for?
> Good question. One of the methods in VMMaker is #touch which is sent
> as part of the noteCompilationOf:isMeta: override in
> InterpreterPlugin. Because this got filed out in advance of the
> implementation of #touch, I used a sar preamble to add a dummy #touch
> to Object, then removed it in the postscript. You may be able to
> suggest an alternative to this. I imagine filein ordering must have
> been an issue somewhere in your MC experience.
Monticello has a fairly generalized ordering system where each
definition can provide a list of symbols/classes/whatever that it
"provides" as well as a list that it "requires", and MC will make sure
that things aren't loaded until all their requirements are provided.
So the trick would be to somehow annotate #noteCompilationOf: that it
required #touch, so that the ordering would happen correctly. Every
time I bring up method annotations somebody complains, but if anyone
can suggest a generally acceptable mechanism of recording this
information I will happily build it into MC.
More information about the Squeak-dev
mailing list
|