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
|