SqueakMap crashes in 3.10 beta.7158

Bert Freudenberg bert at freudenbergs.de
Thu Nov 1 11:04:50 UTC 2007


On Nov 1, 2007, at 7:43 , Brian Brown wrote:

> On Nov 1, 2007, at 12:26 AM, Andreas Raab wrote:
>
>> Brian Brown wrote:
>>> Hi Chris - I think you are missing one of the main points of the  
>>> Universe model. Universes do not pick the "most recent version of  
>>> anything. A particular universe has pointers to specific code  
>>> packages, i.e. specific mcz files which represent one and only  
>>> one version of that piece of code. There is nothing dynamic about  
>>> it, so it is really like a freebsd port or debian package - you  
>>> have to have specific version of the dependencies that port or  
>>> package needs, not just the "latest".
>>
>> That is *definitely* not true. The code in  
>> UUniverseBrowser>>allPackagesNeededToInstall:orIfImpossible:  
>> explicitly uses the *latest* version of a package; the basic loop  
>> goes like this:
>>
>>  package depends do: [ :depName |
>>    "... some code omitted for brevity ..."
>>   (universe hasPackageNamed: depName) ifTrue: [
>>     packagesToConsider add: (universe newestPackageNamed: depName)
>>   ].
>>
>> and #newestPackageNamed: does just what it says:
>>
>> newestPackageNamed: name
>>  | potentials sorted |
>>  potentials _ self packagesNamed: name.
>>  sorted _ potentials asSortedCollection: [ :p1 :p2 | p1 version <  
>> p2 version ].
>>  ^sorted last
>
> Well, obviously a gross misunderstanding on my part, based on Lex's  
> initial discussions and further clarifications on what Universes  
> are supposed to be. I did not look at the code to verify that, but  
> was arguing from what I had gathered from the discussion.
>
> In light of the actual code, I have to retract what I said, with  
> apologies.
>
> Thanks for pointing this out!
>
>
>>
>>
>>> "Guaranteed to work together" means that the author of the  
>>> Universe has ostensibly tested that the specific package versions  
>>> in that Universe do in fact work together. Since it is NOT  
>>> grabbing "the latest code", that is a claim a Universe can make.
>>
>> Given the above, how can it?
>>
>
> Agreed ;)


You're forgetting there are multiple Universes. Inside one Universe,  
you get the latest version. Changes that break backwards- 
compatibility have to go into the next Universe.

- Bert -





More information about the Squeak-dev mailing list