Re: [Pharo-project] Pavel can you check :)
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 Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Hi, fix attached to the issue. Unknown classes are initialized at the end by alphabetical order. Cheers, -- Pavel On Sat, Oct 23, 2010 at 12:39 PM, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
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 Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
participants (2)
-
Pavel Krivanek -
Stéphane Ducasse