dway at mailcan.com
Sat Jun 11 22:04:17 UTC 2005
I think this makes a lot of sense. The combination of Monticello & the
update stream sounds like it would be workable.
Also, I see that their initial packaging is reasonably coarse-grained,
which is good. :) (i.e. based on class category prefix, not class
When you mentioned updating all packages to the "latest version" versus
"latest maintainer-approved version", I was thinking "we could use the
'published' flag for that", but oops, that's SqueakMap, not Monticello.
:) But I agree that MC's more rigid/uniform packaging scheme is the way
to go for managing the base image. We may need a few little enhacements
like that for MC, e.g. marking a version as maintainer-approved. (Well,
maybe there's a way for the packages to automatically show up in
The initial maintainership model could err on the side of openness,
maybe even having some people with write access to all packages. Then
we could restrict it a bit more later.
So, perhaps we should give it a go?
As Stephane said, who wants to set this up?
I confess that I mostly just have time to offer discussion and
coordination, and not much time for "real work" here other than perhaps
helping handle the update stream side of things.
On Fri, 10 Jun 2005 14:38:11 +0200, "Avi Bryant" <avi.bryant at gmail.com>
> Hi all,
> Sorry for the long silence on this list - I've been negligent in my
> team leadership duties by not keeping the discussion going (for
> example, I think Lex posted a status report that should have been
> forwarded to squeak-dev but was instead completely ignored - sorry
> about that).
> However, it seems that if you ignore a problem long enough, eventually
> someone else will solve it for you. I thought the recent traffic on
> the list about Tweak's approach to managing updates and packaging was
> very relevant: it sounds like Impara have come up with a system that
> nicely balances Monticello and the update stream, and that actually
> works. If you didn't see the original message from Andreas, here's
> the important bit:
> "In Tweak, *all* code is in packages[*]. Updates are
> exclusively used for in-image reshapes, e.g., when part of the system
> has undergone significant changes that require manual intervention. In
> order to synchronize these modifications with the package versions that
> we expect, we typically post a configuration map, e.g., a list of
> packages where we expect some specific version to be present.
> When you update, we always consult the update stream first. This will
> suck in any intermediate configurations and perform the necessary
> in-image modifications. Once this is done, we merely upgrade all
> packages in a well-defined order to their latest version."
> Moreover, they've come up with an initial packaging for Squeak 3.8,
> available at http://source.impara.de/iSqueak.html (see the wiki tab
> for info and downloads).
> I think this is great work, and I'd like to suggest that we adopt it
> as the basis for the partitioning/packaging efforts in this team.
> This would mean, probably, these steps:
> - We adopt the reorganization changeset from iSqueak as the first
> packaging changeset to go into the 3.9 stream
> - We include Monticello and Impara's MonticelloConfigurations as base
> packages in 3.9
> - We set up an initial repository (probably based on SqueakSource) for
> the resulting Squeak packages, which anyone on this team can commit
> to, and start committing the results of any further partitioning work
> to it
> - We hack the repository as needed to support whatever kind of
> maintainership model we want for the Squeak packages. Tweak lives in
> a fairly closed world, where it's reasonable for everyone to update to
> the latest version everyone has posted, but Squeak (probably) can't do
> that. So instead of "upgrade all packages in a well-defined order to
> their latest version", we probably need "to their latest
> maintainer-approved version", and have a harvesting process that turns
> submitted versions to approved versions. We may find that the
> "blessing" mechanism I developed for the UnstableSqueak project is a
> good step in this direction, but we should talk about it more.
More information about the Packages