SM issues, requesting feedback

lex at cc.gatech.edu lex at cc.gatech.edu
Thu Jul 15 15:48:24 UTC 2004


goran.krampe at bluefish.se wrote:
> AtomicGame for example relies on initialize being called automatically.
[...]
> Ok, this poses the question how "upgrade all installed" SHOULD work.

With multiple maps, then "upgrade all installed" is already just fine. 
If you are using the 3.6 map then you simply won't see any versions that
are not compatible with 3.6.


If we stick with single maps, I don't know how to answer the question. 
By the time you make it work, I suspect you will have a dodgy
implementation of multiple maps.  :)  For example, you could have
multiple streams of releases per package, one steam per squeak version,
and then have the client pull only from the streams that are relevant to
the Squeak version it is running in.  But if you are going to do all
that, you may as well do it cleanly and simply and have multiple maps.

Note that multiple maps also gives another benefit than solving the
upgrade question: it lets people define multiple distributions of Squeak
packages.  This would let someone make a newbie-friendly Squeak
distribution.  This would let someone make an organization-specific
distribution of Squeak.  And it would let people post packages that may
not be appropriate for the central distribution.  



> First - why did it try to upgrade to an unpublished release? #isOld has
> been modified to handle it? Well, the code is buggy - it fails because
> there is no lastPublishedRelease, and even if there was one - it would
> also fail if that was not the one installed. Silly code really.
> 
> If I fix that we still have a problem. Lets say the new Games package
> was released and all. Since it is solely for 3.7 - it should still not
> try to upgrade to it. Granted - we are now going into the Land Of
> Missing Dependencies - but can we do better as it stands today?
> 
> One possible logic would be to implement isOld so that if there is a
> newer release than the one installed, which is published AND for this
> Squeak version, then it is old. What if there are multiple new releases?
> Should it upgrade one step at a time? Or directly to the latest?
> 
> Well, if we want "upgrade all installed" to work in a 3.6 Full - then I
> at least need to do something.

All that and we are still not at a satisfactory solution.  Hmm.



-Lex


PS -- as usual, all of the above reasoning comes straight from a
consideration of Debian, in this case its "apt" repositories plus
associated tools.



More information about the Squeak-dev mailing list