I want to experiment with Smalltalk #shrink but the stock
Squeak4.5-12641.image has AnObsoleteBindingTest and... one other ObsoleteClass stuck in the image. Not even Smalltalk fixObsoleteReferences can get rid of it. The reference is buried in Environment's 'exports' Dictionary. I can certainly remove it manually but how should we fix it in published image? |
El 9/10/13 10:18 PM, "Chris Muller" <[hidden email]> escribió: >I want to experiment with Smalltalk #shrink but the stock >Squeak4.5-12641.image has AnObsoleteBindingTest and... one other >ObsoleteClass stuck in the image. Not even Smalltalk >fixObsoleteReferences can get rid of it. > >The reference is buried in Environment's 'exports' Dictionary. I can >certainly remove it manually but how should we fix it in published >image? Yesterday I made the monthly update following trunk of my SqueakRosCore and notice we don't have Smalltalk unloadAllKnownPackages now My idea is unloadReloadablePackages "Unload packages which can be reloaded." #( 'ReleaseBuilder' 'ScriptLoader' '311Deprecated' '39Deprecated' 'Universes' 'SMLoader' 'SMBase' 'Installer-Core' 'VersionNumberTests' 'VersionNumber' 'Services-Base' 'PreferenceBrowser' 'Nebraska' 'ToolBuilder-MVC' 'ST80' 'CollectionsTests' 'GraphicsTests' 'KernelTests' 'MorphicTests' 'MultilingualTests' 'NetworkTests' 'ToolsTests' 'TraitsTests' 'SystemChangeNotification-Tests' 'FlexibleVocabularies' 'EToys' 'Protocols' 'XML-Parser' 'Tests' 'SUnitGUI' 'Help-Squeak' 'HelpSystem' 'SystemReporter' 'GetText' 'Environments' ) do: [:pkgName| (MCPackage named: pkgName) unload. MCMcmUpdater disableUpdatesOfPackage: pkgName. ]. "Traits use custom unload" self at: #Trait ifPresent: [ : aClass | aClass unloadTraits ] And we get rid of more packages. Of course we must be careful of go back to previous version of methods concerningto Environments |
On 11 September 2013 11:21, Edgar J. De Cleene <[hidden email]> wrote:
> > > El 9/10/13 10:18 PM, "Chris Muller" <[hidden email]> escribió: > >>I want to experiment with Smalltalk #shrink but the stock >>Squeak4.5-12641.image has AnObsoleteBindingTest and... one other >>ObsoleteClass stuck in the image. Not even Smalltalk >>fixObsoleteReferences can get rid of it. >> >>The reference is buried in Environment's 'exports' Dictionary. I can >>certainly remove it manually but how should we fix it in published >>image? > > > Yesterday I made the monthly update following trunk of my SqueakRosCore > and notice we don't have Smalltalk unloadAllKnownPackages now > > My idea is > unloadReloadablePackages > "Unload packages which can be reloaded." > #( 'ReleaseBuilder' 'ScriptLoader' > '311Deprecated' '39Deprecated' > 'Universes' 'SMLoader' 'SMBase' 'Installer-Core' > 'VersionNumberTests' 'VersionNumber' > 'Services-Base' 'PreferenceBrowser' 'Nebraska' > 'ToolBuilder-MVC' 'ST80' > 'CollectionsTests' 'GraphicsTests' 'KernelTests' 'MorphicTests' > 'MultilingualTests' 'NetworkTests' 'ToolsTests' 'TraitsTests' > 'SystemChangeNotification-Tests' 'FlexibleVocabularies' > 'EToys' 'Protocols' 'XML-Parser' 'Tests' 'SUnitGUI' > 'Help-Squeak' 'HelpSystem' 'SystemReporter' 'GetText' 'Environments' > ) do: [:pkgName| > (MCPackage named: pkgName) unload. > MCMcmUpdater disableUpdatesOfPackage: pkgName. > ]. > "Traits use custom unload" > self > at: #Trait > ifPresent: [ : aClass | aClass unloadTraits ] > > > And we get rid of more packages. > Of course we must be careful of go back to previous version of methods > concerningto Environments Environments is a very low level package. It should be one of the least unloadable packages (because of its nature). For instance, you should need to remove 'Tools' before you can think of removing Environments, because Squeak 4.5 is all about Environments, and making the tools use them. frank |
We can't unload anything right now because unloading a package calls
#unloadCleanup, which calls #fixObsoleteReferences, which fails. On Wed, Sep 11, 2013 at 5:43 AM, Frank Shearar <[hidden email]> wrote: > On 11 September 2013 11:21, Edgar J. De Cleene <[hidden email]> wrote: >> >> >> El 9/10/13 10:18 PM, "Chris Muller" <[hidden email]> escribió: >> >>>I want to experiment with Smalltalk #shrink but the stock >>>Squeak4.5-12641.image has AnObsoleteBindingTest and... one other >>>ObsoleteClass stuck in the image. Not even Smalltalk >>>fixObsoleteReferences can get rid of it. >>> >>>The reference is buried in Environment's 'exports' Dictionary. I can >>>certainly remove it manually but how should we fix it in published >>>image? >> >> >> Yesterday I made the monthly update following trunk of my SqueakRosCore >> and notice we don't have Smalltalk unloadAllKnownPackages now >> >> My idea is >> unloadReloadablePackages >> "Unload packages which can be reloaded." >> #( 'ReleaseBuilder' 'ScriptLoader' >> '311Deprecated' '39Deprecated' >> 'Universes' 'SMLoader' 'SMBase' 'Installer-Core' >> 'VersionNumberTests' 'VersionNumber' >> 'Services-Base' 'PreferenceBrowser' 'Nebraska' >> 'ToolBuilder-MVC' 'ST80' >> 'CollectionsTests' 'GraphicsTests' 'KernelTests' 'MorphicTests' >> 'MultilingualTests' 'NetworkTests' 'ToolsTests' 'TraitsTests' >> 'SystemChangeNotification-Tests' 'FlexibleVocabularies' >> 'EToys' 'Protocols' 'XML-Parser' 'Tests' 'SUnitGUI' >> 'Help-Squeak' 'HelpSystem' 'SystemReporter' 'GetText' 'Environments' >> ) do: [:pkgName| >> (MCPackage named: pkgName) unload. >> MCMcmUpdater disableUpdatesOfPackage: pkgName. >> ]. >> "Traits use custom unload" >> self >> at: #Trait >> ifPresent: [ : aClass | aClass unloadTraits ] >> >> >> And we get rid of more packages. >> Of course we must be careful of go back to previous version of methods >> concerningto Environments > > Environments is a very low level package. It should be one of the > least unloadable packages (because of its nature). For instance, you > should need to remove 'Tools' before you can think of removing > Environments, because Squeak 4.5 is all about Environments, and making > the tools use them. > > frank > |
In reply to this post by Edgar De Cleene
Edgar, unloadAllKnownPackages was recently renamed.
On Wed, Sep 11, 2013 at 5:21 AM, Edgar J. De Cleene <[hidden email]> wrote: > > > El 9/10/13 10:18 PM, "Chris Muller" <[hidden email]> escribió: > >>I want to experiment with Smalltalk #shrink but the stock >>Squeak4.5-12641.image has AnObsoleteBindingTest and... one other >>ObsoleteClass stuck in the image. Not even Smalltalk >>fixObsoleteReferences can get rid of it. >> >>The reference is buried in Environment's 'exports' Dictionary. I can >>certainly remove it manually but how should we fix it in published >>image? > > > Yesterday I made the monthly update following trunk of my SqueakRosCore > and notice we don't have Smalltalk unloadAllKnownPackages now > > My idea is > unloadReloadablePackages > "Unload packages which can be reloaded." > #( 'ReleaseBuilder' 'ScriptLoader' > '311Deprecated' '39Deprecated' > 'Universes' 'SMLoader' 'SMBase' 'Installer-Core' > 'VersionNumberTests' 'VersionNumber' > 'Services-Base' 'PreferenceBrowser' 'Nebraska' > 'ToolBuilder-MVC' 'ST80' > 'CollectionsTests' 'GraphicsTests' 'KernelTests' 'MorphicTests' > 'MultilingualTests' 'NetworkTests' 'ToolsTests' 'TraitsTests' > 'SystemChangeNotification-Tests' 'FlexibleVocabularies' > 'EToys' 'Protocols' 'XML-Parser' 'Tests' 'SUnitGUI' > 'Help-Squeak' 'HelpSystem' 'SystemReporter' 'GetText' 'Environments' > ) do: [:pkgName| > (MCPackage named: pkgName) unload. > MCMcmUpdater disableUpdatesOfPackage: pkgName. > ]. > "Traits use custom unload" > self > at: #Trait > ifPresent: [ : aClass | aClass unloadTraits ] > > > And we get rid of more packages. > Of course we must be careful of go back to previous version of methods > concerningto Environments > > > |
In reply to this post by Chris Muller-3
El 9/11/13 11:38 AM, "Chris Muller" <[hidden email]> escribió: >We can't unload anything right now because unloading a package calls >#unloadCleanup, which calls #fixObsoleteReferences, which fails. > Not in my image. MCPackageManager flushObsoletePackageInfos is working. At which point in the trunk fail? So I take a look Edgar > |
In reply to this post by Chris Muller-3
El 9/11/13 11:39 AM, "Chris Muller" <[hidden email]> escribió: >Edgar, unloadAllKnownPackages was recently renamed. Thanks, I discover this. Now we have shrink And unloadReloadablePackages Now I rebuilding all from Squeak 4.2 and collect troubles for feedback here Cheers Edgar |
Free forum by Nabble | Edit this page |