When I clicked on a package, it got downloaded to the package cache using the 
writeDefinitions: method

writeDefinitions: aCollection
        "initStream is an ugly hack until we have proper init defs"
        
        initializers := Dictionary new.

        (MCDependencySorter sortItems: aCollection)
                do: [:ea | ea accept: self]
                displayingProgress: 'Writing definitions...'.
        
        (Class superclassOrder: (initializers  keys collect: [:each | Smalltalk 
classOrTraitNamed: each])) do: [:class |
                stream nextPutAll: (initializers at: class name) contents ].


Now it is bugging because initializers keys could contain a class that is not 
in the image and then put nil in the set
The previous version of the method was:

writeDefinitions: aCollection
        "initStream is an ugly hack until we have proper init defs"
        initStream := String new writeStream.

        (MCDependencySorter sortItems: aCollection)
                do: [:ea | ea accept: self]
                displayingProgress: 'Writing definitions...'.
        
        stream nextPutAll: initStream contents.


- The previous version did not save initializers or may be different 

- Now the changes does not take into account classes that are not in the image.
And this one should still be saved
        








On Oct 23, 2010, at 12:22 PM, Stéphane Ducasse wrote:

> Apparently when we browse
> Compiler-eem.155 from the squeak trunk (ScriptLoader new addExtraRepositories)
> 
> we get a problem because there is a nil in the set.
> 
> Can you have a look?
> 
> Stef
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to