SqueakMap crashes in 3.10 beta.7158

Jason Johnson jason.johnson.081 at gmail.com
Thu Nov 1 18:12:28 UTC 2007


The misunderstanding here is that it is the latest version of the
*configured* package.  So if someone releases a new version of a
dependency you have, you have to explicitly make a pointer to the new
version.  If you don't, the Universe wont load it because it doesn't
know about it.

On 11/1/07, Andreas Raab <andreas.raab at gmx.de> 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
>
> > "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?
>
> Cheers,
>    - Andreas
>
>



More information about the Squeak-dev mailing list