David T. Lewis uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-dtl.458.mcz ==================== Summary ==================== Name: Kernel-dtl.458 Author: dtl Time: 10 June 2010, 7:19:48.745 pm UUID: cbd7063b-14c0-46a6-80af-00ab06fef6cc Ancestors: Kernel-dtl.457 Fix discrepancy noted in Mantis 7525 http://bugs.squeak.org/view.php?id=7525 ---------------------------------------------------------------------- JoachimGeidel - 06-10-10 12:20 ---------------------------------------------------------------------- PseudoContext class>>initialize and TranslatedMethod class>>initialize test if the specialObjectsArray size equals 41 after recreating it and raise an Error if it is not (in Squeak 4.1, latest update: 9957). The tests should either be updated or removed. =============== Diff against Kernel-dtl.457 =============== Item was changed: ----- Method: TranslatedMethod class>>initialize (in category 'class initialization') ----- initialize self becomeCompact. Smalltalk recreateSpecialObjectsArray. + Smalltalk specialObjectsArray size = 56 - Smalltalk specialObjectsArray size = 41 ifFalse: [self error: 'Please check size of special objects array!!']! Item was changed: ----- Method: PseudoContext class>>initialize (in category 'class initialization') ----- initialize "It's tricky to do the necessary stuff with the regular file-in machinery." PseudoContext superclass = nil ifFalse: [ (Smalltalk confirm: 'Shall I convert PseudoContext into a compact subclass of nil? ("yes" is almost always the correct response)') ifTrue: [ PseudoContext becomeCompact. PseudoContext superclass removeSubclass: PseudoContext. PseudoContext superclass: nil]]. Smalltalk recreateSpecialObjectsArray. + Smalltalk specialObjectsArray size = 56 - Smalltalk specialObjectsArray size = 41 ifFalse: [self error: 'Please check size of special objects array!!']! |
On 2010/06/10 23:22, [hidden email] wrote:
> David T. Lewis uploaded a new version of Kernel to project The Trunk: > http://source.squeak.org/trunk/Kernel-dtl.458.mcz > > ==================== Summary ==================== > > Name: Kernel-dtl.458 > Author: dtl > Time: 10 June 2010, 7:19:48.745 pm > UUID: cbd7063b-14c0-46a6-80af-00ab06fef6cc > Ancestors: Kernel-dtl.457 > > Fix discrepancy noted in Mantis 7525 > http://bugs.squeak.org/view.php?id=7525 > ---------------------------------------------------------------------- > JoachimGeidel - 06-10-10 12:20 > ---------------------------------------------------------------------- > PseudoContext class>>initialize and TranslatedMethod class>>initialize test > if the specialObjectsArray size equals 41 after recreating it and raise an > Error if it is not (in Squeak 4.1, latest update: 9957). The tests should > either be updated or removed. When I upgrade my image, I get a walkback saying "Error: Please check size of special objects array!" 11 June 2010 5:36:23.986 pm VM: Win32 - Smalltalk Image: Squeak4.1alpha [latest update: #10147] SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir C:\Documents and Settings\franks\Local Settings\Application Data\Squeak 4.1 Alpha Trusted Dir C:\Documents and Settings\franks\Local Settings\Application Data\Squeak 4.1 Alpha\franks Untrusted Dir C:\Documents and Settings\franks\My Documents\My Squeak PseudoContext class(Object)>>error: Receiver: PseudoContext Arguments and temporary variables: aString: 'Please check size of special objects array!' Receiver's instance variables: superclass: nil methodDict: a MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... format: 8590 instanceVariables: #('fixed' 'fields' 'never' 'accessed' 'from' 'smalltalk') organization: ('system primitives' nextObject) ('testing' isPseudoContext) subclasses: nil name: #PseudoContext classPool: nil sharedPools: nil environment: nil category: #'Kernel-Methods' PseudoContext class>>initialize Receiver: PseudoContext Arguments and temporary variables: Receiver's instance variables: superclass: nil methodDict: a MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... format: 8590 instanceVariables: #('fixed' 'fields' 'never' 'accessed' 'from' 'smalltalk') organization: ('system primitives' nextObject) ('testing' isPseudoContext) subclasses: nil name: #PseudoContext classPool: nil sharedPools: nil environment: nil category: #'Kernel-Methods' MCMethodDefinition>>postload Receiver: a MCMethodDefinition(PseudoContext class>>initialize) Arguments and temporary variables: Receiver's instance variables: classIsMeta: true source: 'initialize "It''s tricky to do the necessary stuff with the regular f...etc... category: #'class initialization' selector: #initialize className: #PseudoContext timeStamp: 'dtl 6/10/2010 19:15' MCMethodDefinition(MCDefinition)>>postloadOver: Receiver: a MCMethodDefinition(PseudoContext class>>initialize) Arguments and temporary variables: aDefinition: a MCMethodDefinition(PseudoContext class>>initialize) Receiver's instance variables: classIsMeta: true source: 'initialize "It''s tricky to do the necessary stuff with the regular f...etc... category: #'class initialization' selector: #initialize className: #PseudoContext timeStamp: 'dtl 6/10/2010 19:15' --- The full stack --- PseudoContext class(Object)>>error: PseudoContext class>>initialize MCMethodDefinition>>postload MCMethodDefinition(MCDefinition)>>postloadOver: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [] in [] in [] in MCPackageLoader>>basicLoad [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every: OrderedCollection>>do: [] in OrderedCollection(Collection)>>do:displayingProgress:every: [] in [] in ProgressInitiationException>>defaultMorphicAction BlockClosure>>on:do: [] in ProgressInitiationException>>defaultMorphicAction BlockClosure>>ensure: ProgressInitiationException>>defaultMorphicAction ProgressInitiationException>>defaultAction UndefinedObject>>handleSignal: MethodContext(ContextPart)>>handleSignal: MethodContext(ContextPart)>>handleSignal: ProgressInitiationException(Exception)>>signal ProgressInitiationException>>display:at:from:to:during: ProgressInitiationException class>>display:at:from:to:during: ByteString(String)>>displayProgressAt:from:to:during: OrderedCollection(Collection)>>do:displayingProgress:every: OrderedCollection(Collection)>>do:displayingProgress: [] in [] in MCPackageLoader>>basicLoad BlockClosure>>on:do: [] in MCPackageLoader>>basicLoad BlockClosure>>ensure: MCPackageLoader>>basicLoad [] in MCPackageLoader>>loadWithNameLike: [] in MCPackageLoader>>useChangeSetNamed:during: BlockClosure>>ensure: MCPackageLoader>>useChangeSetNamed:during: MCPackageLoader>>useNewChangeSetNamedLike:during: MCPackageLoader>>loadWithNameLike: MCVersionLoader>>load MCVersionLoader class>>loadVersion: MCDiffyVersion(MCVersion)>>load [] in MCConfiguration>>upgrade [] in MCConfiguration>>depsSatisfying:versionDo:displayingProgress: OrderedCollection>>do: MCConfiguration>>depsSatisfying:versionDo:displayingProgress: MCConfiguration>>upgrade [] in [] in [] in MCMcmUpdater class>>updateFromRepositories: BlockClosure>>valueWithPossibleArgument: SortedCollection(Collection)>>ifNotEmpty: ...etc... |
Oops, my apologies. That is the class initializers running when
loaded (d'oh!). Probably the size tests can just be eliminated entirely as Joachim suggested. I'm away from Squeak for the next day, so if someone can correct my mistake I'd appreciate it. Sorry, Dave On Fri, Jun 11, 2010 at 05:36:51PM +0200, Frank Shearar wrote: > On 2010/06/10 23:22, [hidden email] wrote: > >David T. Lewis uploaded a new version of Kernel to project The Trunk: > >http://source.squeak.org/trunk/Kernel-dtl.458.mcz > > > >==================== Summary ==================== > > > >Name: Kernel-dtl.458 > >Author: dtl > >Time: 10 June 2010, 7:19:48.745 pm > >UUID: cbd7063b-14c0-46a6-80af-00ab06fef6cc > >Ancestors: Kernel-dtl.457 > > > >Fix discrepancy noted in Mantis 7525 > >http://bugs.squeak.org/view.php?id=7525 > >---------------------------------------------------------------------- > > JoachimGeidel - 06-10-10 12:20 > >---------------------------------------------------------------------- > >PseudoContext class>>initialize and TranslatedMethod class>>initialize test > >if the specialObjectsArray size equals 41 after recreating it and raise an > >Error if it is not (in Squeak 4.1, latest update: 9957). The tests should > >either be updated or removed. > > When I upgrade my image, I get a walkback saying "Error: Please check > size of special objects array!" > > 11 June 2010 5:36:23.986 pm > > VM: Win32 - Smalltalk > Image: Squeak4.1alpha [latest update: #10147] > > SecurityManager state: > Restricted: false > FileAccess: true > SocketAccess: true > Working Dir C:\Documents and Settings\franks\Local Settings\Application > Data\Squeak 4.1 Alpha > Trusted Dir C:\Documents and Settings\franks\Local Settings\Application > Data\Squeak 4.1 Alpha\franks > Untrusted Dir C:\Documents and Settings\franks\My Documents\My Squeak > > PseudoContext class(Object)>>error: > Receiver: PseudoContext > Arguments and temporary variables: > aString: 'Please check size of special objects array!' > Receiver's instance variables: > superclass: nil > methodDict: a > MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... > format: 8590 > instanceVariables: #('fixed' 'fields' 'never' > 'accessed' 'from' 'smalltalk') > organization: ('system primitives' nextObject) > ('testing' isPseudoContext) > > subclasses: nil > name: #PseudoContext > classPool: nil > sharedPools: nil > environment: nil > category: #'Kernel-Methods' > > PseudoContext class>>initialize > Receiver: PseudoContext > Arguments and temporary variables: > > Receiver's instance variables: > superclass: nil > methodDict: a > MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... > format: 8590 > instanceVariables: #('fixed' 'fields' 'never' > 'accessed' 'from' 'smalltalk') > organization: ('system primitives' nextObject) > ('testing' isPseudoContext) > > subclasses: nil > name: #PseudoContext > classPool: nil > sharedPools: nil > environment: nil > category: #'Kernel-Methods' > > MCMethodDefinition>>postload > Receiver: a MCMethodDefinition(PseudoContext class>>initialize) > Arguments and temporary variables: > > Receiver's instance variables: > classIsMeta: true > source: 'initialize > "It''s tricky to do the necessary stuff with the regular f...etc... > category: #'class initialization' > selector: #initialize > className: #PseudoContext > timeStamp: 'dtl 6/10/2010 19:15' > > MCMethodDefinition(MCDefinition)>>postloadOver: > Receiver: a MCMethodDefinition(PseudoContext class>>initialize) > Arguments and temporary variables: > aDefinition: a MCMethodDefinition(PseudoContext > class>>initialize) > Receiver's instance variables: > classIsMeta: true > source: 'initialize > "It''s tricky to do the necessary stuff with the regular f...etc... > category: #'class initialization' > selector: #initialize > className: #PseudoContext > timeStamp: 'dtl 6/10/2010 19:15' > > > --- The full stack --- > PseudoContext class(Object)>>error: > PseudoContext class>>initialize > MCMethodDefinition>>postload > MCMethodDefinition(MCDefinition)>>postloadOver: > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - > [] in [] in [] in MCPackageLoader>>basicLoad > [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every: > OrderedCollection>>do: > [] in OrderedCollection(Collection)>>do:displayingProgress:every: > [] in [] in ProgressInitiationException>>defaultMorphicAction > BlockClosure>>on:do: > [] in ProgressInitiationException>>defaultMorphicAction > BlockClosure>>ensure: > ProgressInitiationException>>defaultMorphicAction > ProgressInitiationException>>defaultAction > UndefinedObject>>handleSignal: > MethodContext(ContextPart)>>handleSignal: > MethodContext(ContextPart)>>handleSignal: > ProgressInitiationException(Exception)>>signal > ProgressInitiationException>>display:at:from:to:during: > ProgressInitiationException class>>display:at:from:to:during: > ByteString(String)>>displayProgressAt:from:to:during: > OrderedCollection(Collection)>>do:displayingProgress:every: > OrderedCollection(Collection)>>do:displayingProgress: > [] in [] in MCPackageLoader>>basicLoad > BlockClosure>>on:do: > [] in MCPackageLoader>>basicLoad > BlockClosure>>ensure: > MCPackageLoader>>basicLoad > [] in MCPackageLoader>>loadWithNameLike: > [] in MCPackageLoader>>useChangeSetNamed:during: > BlockClosure>>ensure: > MCPackageLoader>>useChangeSetNamed:during: > MCPackageLoader>>useNewChangeSetNamedLike:during: > MCPackageLoader>>loadWithNameLike: > MCVersionLoader>>load > MCVersionLoader class>>loadVersion: > MCDiffyVersion(MCVersion)>>load > [] in MCConfiguration>>upgrade > [] in MCConfiguration>>depsSatisfying:versionDo:displayingProgress: > OrderedCollection>>do: > MCConfiguration>>depsSatisfying:versionDo:displayingProgress: > MCConfiguration>>upgrade > [] in [] in [] in MCMcmUpdater class>>updateFromRepositories: > BlockClosure>>valueWithPossibleArgument: > SortedCollection(Collection)>>ifNotEmpty: > ...etc... |
In reply to this post by Frank Shearar
I think that the problem described below is a result of package Kernel
being loaded prior to package System in the configuration map. If the earlier change to the special objects array (in package System) had not yet been applied, then we get an error in the Kernel-dtl.458 update when the class initializers run. That means that someone who has not updated their image within the last few weeks is going to encounter this problem. In retrospect I should have updated the config map prior to doing the Kernel-dtl.458 update, but I'm not sure how (or if) I should fix it now. Moving System ahead of Kernel in the dependency list would take care of the problem, but I worry that this might have other side effects. Any advice? Is it safe to move System ahead of Kernel in the update dependency list? Thanks, Dave On Fri, Jun 11, 2010 at 05:36:51PM +0200, Frank Shearar wrote: > On 2010/06/10 23:22, [hidden email] wrote: > >David T. Lewis uploaded a new version of Kernel to project The Trunk: > >http://source.squeak.org/trunk/Kernel-dtl.458.mcz > > > >==================== Summary ==================== > > > >Name: Kernel-dtl.458 > >Author: dtl > >Time: 10 June 2010, 7:19:48.745 pm > >UUID: cbd7063b-14c0-46a6-80af-00ab06fef6cc > >Ancestors: Kernel-dtl.457 > > > >Fix discrepancy noted in Mantis 7525 > >http://bugs.squeak.org/view.php?id=7525 > >---------------------------------------------------------------------- > > JoachimGeidel - 06-10-10 12:20 > >---------------------------------------------------------------------- > >PseudoContext class>>initialize and TranslatedMethod class>>initialize test > >if the specialObjectsArray size equals 41 after recreating it and raise an > >Error if it is not (in Squeak 4.1, latest update: 9957). The tests should > >either be updated or removed. > > When I upgrade my image, I get a walkback saying "Error: Please check > size of special objects array!" > > 11 June 2010 5:36:23.986 pm > > VM: Win32 - Smalltalk > Image: Squeak4.1alpha [latest update: #10147] > > SecurityManager state: > Restricted: false > FileAccess: true > SocketAccess: true > Working Dir C:\Documents and Settings\franks\Local Settings\Application > Data\Squeak 4.1 Alpha > Trusted Dir C:\Documents and Settings\franks\Local Settings\Application > Data\Squeak 4.1 Alpha\franks > Untrusted Dir C:\Documents and Settings\franks\My Documents\My Squeak > > PseudoContext class(Object)>>error: > Receiver: PseudoContext > Arguments and temporary variables: > aString: 'Please check size of special objects array!' > Receiver's instance variables: > superclass: nil > methodDict: a > MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... > format: 8590 > instanceVariables: #('fixed' 'fields' 'never' > 'accessed' 'from' 'smalltalk') > organization: ('system primitives' nextObject) > ('testing' isPseudoContext) > > subclasses: nil > name: #PseudoContext > classPool: nil > sharedPools: nil > environment: nil > category: #'Kernel-Methods' > > PseudoContext class>>initialize > Receiver: PseudoContext > Arguments and temporary variables: > > Receiver's instance variables: > superclass: nil > methodDict: a > MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... > format: 8590 > instanceVariables: #('fixed' 'fields' 'never' > 'accessed' 'from' 'smalltalk') > organization: ('system primitives' nextObject) > ('testing' isPseudoContext) > > subclasses: nil > name: #PseudoContext > classPool: nil > sharedPools: nil > environment: nil > category: #'Kernel-Methods' > > MCMethodDefinition>>postload > Receiver: a MCMethodDefinition(PseudoContext class>>initialize) > Arguments and temporary variables: > > Receiver's instance variables: > classIsMeta: true > source: 'initialize > "It''s tricky to do the necessary stuff with the regular f...etc... > category: #'class initialization' > selector: #initialize > className: #PseudoContext > timeStamp: 'dtl 6/10/2010 19:15' > > MCMethodDefinition(MCDefinition)>>postloadOver: > Receiver: a MCMethodDefinition(PseudoContext class>>initialize) > Arguments and temporary variables: > aDefinition: a MCMethodDefinition(PseudoContext > class>>initialize) > Receiver's instance variables: > classIsMeta: true > source: 'initialize > "It''s tricky to do the necessary stuff with the regular f...etc... > category: #'class initialization' > selector: #initialize > className: #PseudoContext > timeStamp: 'dtl 6/10/2010 19:15' > > > --- The full stack --- > PseudoContext class(Object)>>error: > PseudoContext class>>initialize > MCMethodDefinition>>postload > MCMethodDefinition(MCDefinition)>>postloadOver: > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - > [] in [] in [] in MCPackageLoader>>basicLoad > [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every: > OrderedCollection>>do: > [] in OrderedCollection(Collection)>>do:displayingProgress:every: > [] in [] in ProgressInitiationException>>defaultMorphicAction > BlockClosure>>on:do: > [] in ProgressInitiationException>>defaultMorphicAction > BlockClosure>>ensure: > ProgressInitiationException>>defaultMorphicAction > ProgressInitiationException>>defaultAction > UndefinedObject>>handleSignal: > MethodContext(ContextPart)>>handleSignal: > MethodContext(ContextPart)>>handleSignal: > ProgressInitiationException(Exception)>>signal > ProgressInitiationException>>display:at:from:to:during: > ProgressInitiationException class>>display:at:from:to:during: > ByteString(String)>>displayProgressAt:from:to:during: > OrderedCollection(Collection)>>do:displayingProgress:every: > OrderedCollection(Collection)>>do:displayingProgress: > [] in [] in MCPackageLoader>>basicLoad > BlockClosure>>on:do: > [] in MCPackageLoader>>basicLoad > BlockClosure>>ensure: > MCPackageLoader>>basicLoad > [] in MCPackageLoader>>loadWithNameLike: > [] in MCPackageLoader>>useChangeSetNamed:during: > BlockClosure>>ensure: > MCPackageLoader>>useChangeSetNamed:during: > MCPackageLoader>>useNewChangeSetNamedLike:during: > MCPackageLoader>>loadWithNameLike: > MCVersionLoader>>load > MCVersionLoader class>>loadVersion: > MCDiffyVersion(MCVersion)>>load > [] in MCConfiguration>>upgrade > [] in MCConfiguration>>depsSatisfying:versionDo:displayingProgress: > OrderedCollection>>do: > MCConfiguration>>depsSatisfying:versionDo:displayingProgress: > MCConfiguration>>upgrade > [] in [] in [] in MCMcmUpdater class>>updateFromRepositories: > BlockClosure>>valueWithPossibleArgument: > SortedCollection(Collection)>>ifNotEmpty: > ...etc... |
On 2010/06/12 18:18, David T. Lewis wrote:
> I think that the problem described below is a result of package Kernel > being loaded prior to package System in the configuration map. If the > earlier change to the special objects array (in package System) had not > yet been applied, then we get an error in the Kernel-dtl.458 update when > the class initializers run. That means that someone who has not updated > their image within the last few weeks is going to encounter this problem. Indeed I haven't updated the image in a while. Looks like May 17 was the last time. > In retrospect I should have updated the config map prior to doing the > Kernel-dtl.458 update, but I'm not sure how (or if) I should fix it now. > Moving System ahead of Kernel in the dependency list would take care of > the problem, but I worry that this might have other side effects. > > Any advice? Is it safe to move System ahead of Kernel in the update > dependency list? > > Thanks, > Dave > > > On Fri, Jun 11, 2010 at 05:36:51PM +0200, Frank Shearar wrote: >> On 2010/06/10 23:22, [hidden email] wrote: >>> David T. Lewis uploaded a new version of Kernel to project The Trunk: >>> http://source.squeak.org/trunk/Kernel-dtl.458.mcz >>> >>> ==================== Summary ==================== >>> >>> Name: Kernel-dtl.458 >>> Author: dtl >>> Time: 10 June 2010, 7:19:48.745 pm >>> UUID: cbd7063b-14c0-46a6-80af-00ab06fef6cc >>> Ancestors: Kernel-dtl.457 >>> >>> Fix discrepancy noted in Mantis 7525 >>> http://bugs.squeak.org/view.php?id=7525 >>> ---------------------------------------------------------------------- >>> JoachimGeidel - 06-10-10 12:20 >>> ---------------------------------------------------------------------- >>> PseudoContext class>>initialize and TranslatedMethod class>>initialize test >>> if the specialObjectsArray size equals 41 after recreating it and raise an >>> Error if it is not (in Squeak 4.1, latest update: 9957). The tests should >>> either be updated or removed. >> >> When I upgrade my image, I get a walkback saying "Error: Please check >> size of special objects array!" >> >> 11 June 2010 5:36:23.986 pm >> >> VM: Win32 - Smalltalk >> Image: Squeak4.1alpha [latest update: #10147] >> >> SecurityManager state: >> Restricted: false >> FileAccess: true >> SocketAccess: true >> Working Dir C:\Documents and Settings\franks\Local Settings\Application >> Data\Squeak 4.1 Alpha >> Trusted Dir C:\Documents and Settings\franks\Local Settings\Application >> Data\Squeak 4.1 Alpha\franks >> Untrusted Dir C:\Documents and Settings\franks\My Documents\My Squeak >> >> PseudoContext class(Object)>>error: >> Receiver: PseudoContext >> Arguments and temporary variables: >> aString: 'Please check size of special objects array!' >> Receiver's instance variables: >> superclass: nil >> methodDict: a >> MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... >> format: 8590 >> instanceVariables: #('fixed' 'fields' 'never' >> 'accessed' 'from' 'smalltalk') >> organization: ('system primitives' nextObject) >> ('testing' isPseudoContext) >> >> subclasses: nil >> name: #PseudoContext >> classPool: nil >> sharedPools: nil >> environment: nil >> category: #'Kernel-Methods' >> >> PseudoContext class>>initialize >> Receiver: PseudoContext >> Arguments and temporary variables: >> >> Receiver's instance variables: >> superclass: nil >> methodDict: a >> MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... >> format: 8590 >> instanceVariables: #('fixed' 'fields' 'never' >> 'accessed' 'from' 'smalltalk') >> organization: ('system primitives' nextObject) >> ('testing' isPseudoContext) >> >> subclasses: nil >> name: #PseudoContext >> classPool: nil >> sharedPools: nil >> environment: nil >> category: #'Kernel-Methods' >> >> MCMethodDefinition>>postload >> Receiver: a MCMethodDefinition(PseudoContext class>>initialize) >> Arguments and temporary variables: >> >> Receiver's instance variables: >> classIsMeta: true >> source: 'initialize >> "It''s tricky to do the necessary stuff with the regular f...etc... >> category: #'class initialization' >> selector: #initialize >> className: #PseudoContext >> timeStamp: 'dtl 6/10/2010 19:15' >> >> MCMethodDefinition(MCDefinition)>>postloadOver: >> Receiver: a MCMethodDefinition(PseudoContext class>>initialize) >> Arguments and temporary variables: >> aDefinition: a MCMethodDefinition(PseudoContext >> class>>initialize) >> Receiver's instance variables: >> classIsMeta: true >> source: 'initialize >> "It''s tricky to do the necessary stuff with the regular f...etc... >> category: #'class initialization' >> selector: #initialize >> className: #PseudoContext >> timeStamp: 'dtl 6/10/2010 19:15' >> >> >> --- The full stack --- >> PseudoContext class(Object)>>error: >> PseudoContext class>>initialize >> MCMethodDefinition>>postload >> MCMethodDefinition(MCDefinition)>>postloadOver: >> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - >> [] in [] in [] in MCPackageLoader>>basicLoad >> [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every: >> OrderedCollection>>do: >> [] in OrderedCollection(Collection)>>do:displayingProgress:every: >> [] in [] in ProgressInitiationException>>defaultMorphicAction >> BlockClosure>>on:do: >> [] in ProgressInitiationException>>defaultMorphicAction >> BlockClosure>>ensure: >> ProgressInitiationException>>defaultMorphicAction >> ProgressInitiationException>>defaultAction >> UndefinedObject>>handleSignal: >> MethodContext(ContextPart)>>handleSignal: >> MethodContext(ContextPart)>>handleSignal: >> ProgressInitiationException(Exception)>>signal >> ProgressInitiationException>>display:at:from:to:during: >> ProgressInitiationException class>>display:at:from:to:during: >> ByteString(String)>>displayProgressAt:from:to:during: >> OrderedCollection(Collection)>>do:displayingProgress:every: >> OrderedCollection(Collection)>>do:displayingProgress: >> [] in [] in MCPackageLoader>>basicLoad >> BlockClosure>>on:do: >> [] in MCPackageLoader>>basicLoad >> BlockClosure>>ensure: >> MCPackageLoader>>basicLoad >> [] in MCPackageLoader>>loadWithNameLike: >> [] in MCPackageLoader>>useChangeSetNamed:during: >> BlockClosure>>ensure: >> MCPackageLoader>>useChangeSetNamed:during: >> MCPackageLoader>>useNewChangeSetNamedLike:during: >> MCPackageLoader>>loadWithNameLike: >> MCVersionLoader>>load >> MCVersionLoader class>>loadVersion: >> MCDiffyVersion(MCVersion)>>load >> [] in MCConfiguration>>upgrade >> [] in MCConfiguration>>depsSatisfying:versionDo:displayingProgress: >> OrderedCollection>>do: >> MCConfiguration>>depsSatisfying:versionDo:displayingProgress: >> MCConfiguration>>upgrade >> [] in [] in [] in MCMcmUpdater class>>updateFromRepositories: >> BlockClosure>>valueWithPossibleArgument: >> SortedCollection(Collection)>>ifNotEmpty: >> ...etc... > > > |
In reply to this post by David T. Lewis
FWIW, when I saw this code I got reminded how positively ancient and
unused it is and gave it a thumbs-down. There has been no use for this code in ten years, and there will be no use for it in Cog, so it's gone now. This should fix any and all updating errors people have seen. Cheers, - Andreas On 6/12/2010 9:18 AM, David T. Lewis wrote: > I think that the problem described below is a result of package Kernel > being loaded prior to package System in the configuration map. If the > earlier change to the special objects array (in package System) had not > yet been applied, then we get an error in the Kernel-dtl.458 update when > the class initializers run. That means that someone who has not updated > their image within the last few weeks is going to encounter this problem. > > In retrospect I should have updated the config map prior to doing the > Kernel-dtl.458 update, but I'm not sure how (or if) I should fix it now. > Moving System ahead of Kernel in the dependency list would take care of > the problem, but I worry that this might have other side effects. > > Any advice? Is it safe to move System ahead of Kernel in the update > dependency list? > > Thanks, > Dave > > > On Fri, Jun 11, 2010 at 05:36:51PM +0200, Frank Shearar wrote: >> On 2010/06/10 23:22, [hidden email] wrote: >>> David T. Lewis uploaded a new version of Kernel to project The Trunk: >>> http://source.squeak.org/trunk/Kernel-dtl.458.mcz >>> >>> ==================== Summary ==================== >>> >>> Name: Kernel-dtl.458 >>> Author: dtl >>> Time: 10 June 2010, 7:19:48.745 pm >>> UUID: cbd7063b-14c0-46a6-80af-00ab06fef6cc >>> Ancestors: Kernel-dtl.457 >>> >>> Fix discrepancy noted in Mantis 7525 >>> http://bugs.squeak.org/view.php?id=7525 >>> ---------------------------------------------------------------------- >>> JoachimGeidel - 06-10-10 12:20 >>> ---------------------------------------------------------------------- >>> PseudoContext class>>initialize and TranslatedMethod class>>initialize test >>> if the specialObjectsArray size equals 41 after recreating it and raise an >>> Error if it is not (in Squeak 4.1, latest update: 9957). The tests should >>> either be updated or removed. >> >> When I upgrade my image, I get a walkback saying "Error: Please check >> size of special objects array!" >> >> 11 June 2010 5:36:23.986 pm >> >> VM: Win32 - Smalltalk >> Image: Squeak4.1alpha [latest update: #10147] >> >> SecurityManager state: >> Restricted: false >> FileAccess: true >> SocketAccess: true >> Working Dir C:\Documents and Settings\franks\Local Settings\Application >> Data\Squeak 4.1 Alpha >> Trusted Dir C:\Documents and Settings\franks\Local Settings\Application >> Data\Squeak 4.1 Alpha\franks >> Untrusted Dir C:\Documents and Settings\franks\My Documents\My Squeak >> >> PseudoContext class(Object)>>error: >> Receiver: PseudoContext >> Arguments and temporary variables: >> aString: 'Please check size of special objects array!' >> Receiver's instance variables: >> superclass: nil >> methodDict: a >> MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... >> format: 8590 >> instanceVariables: #('fixed' 'fields' 'never' >> 'accessed' 'from' 'smalltalk') >> organization: ('system primitives' nextObject) >> ('testing' isPseudoContext) >> >> subclasses: nil >> name: #PseudoContext >> classPool: nil >> sharedPools: nil >> environment: nil >> category: #'Kernel-Methods' >> >> PseudoContext class>>initialize >> Receiver: PseudoContext >> Arguments and temporary variables: >> >> Receiver's instance variables: >> superclass: nil >> methodDict: a >> MethodDictionary(#isPseudoContext->(PseudoContext>>#isPseudoConte...etc... >> format: 8590 >> instanceVariables: #('fixed' 'fields' 'never' >> 'accessed' 'from' 'smalltalk') >> organization: ('system primitives' nextObject) >> ('testing' isPseudoContext) >> >> subclasses: nil >> name: #PseudoContext >> classPool: nil >> sharedPools: nil >> environment: nil >> category: #'Kernel-Methods' >> >> MCMethodDefinition>>postload >> Receiver: a MCMethodDefinition(PseudoContext class>>initialize) >> Arguments and temporary variables: >> >> Receiver's instance variables: >> classIsMeta: true >> source: 'initialize >> "It''s tricky to do the necessary stuff with the regular f...etc... >> category: #'class initialization' >> selector: #initialize >> className: #PseudoContext >> timeStamp: 'dtl 6/10/2010 19:15' >> >> MCMethodDefinition(MCDefinition)>>postloadOver: >> Receiver: a MCMethodDefinition(PseudoContext class>>initialize) >> Arguments and temporary variables: >> aDefinition: a MCMethodDefinition(PseudoContext >> class>>initialize) >> Receiver's instance variables: >> classIsMeta: true >> source: 'initialize >> "It''s tricky to do the necessary stuff with the regular f...etc... >> category: #'class initialization' >> selector: #initialize >> className: #PseudoContext >> timeStamp: 'dtl 6/10/2010 19:15' >> >> >> --- The full stack --- >> PseudoContext class(Object)>>error: >> PseudoContext class>>initialize >> MCMethodDefinition>>postload >> MCMethodDefinition(MCDefinition)>>postloadOver: >> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - >> [] in [] in [] in MCPackageLoader>>basicLoad >> [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every: >> OrderedCollection>>do: >> [] in OrderedCollection(Collection)>>do:displayingProgress:every: >> [] in [] in ProgressInitiationException>>defaultMorphicAction >> BlockClosure>>on:do: >> [] in ProgressInitiationException>>defaultMorphicAction >> BlockClosure>>ensure: >> ProgressInitiationException>>defaultMorphicAction >> ProgressInitiationException>>defaultAction >> UndefinedObject>>handleSignal: >> MethodContext(ContextPart)>>handleSignal: >> MethodContext(ContextPart)>>handleSignal: >> ProgressInitiationException(Exception)>>signal >> ProgressInitiationException>>display:at:from:to:during: >> ProgressInitiationException class>>display:at:from:to:during: >> ByteString(String)>>displayProgressAt:from:to:during: >> OrderedCollection(Collection)>>do:displayingProgress:every: >> OrderedCollection(Collection)>>do:displayingProgress: >> [] in [] in MCPackageLoader>>basicLoad >> BlockClosure>>on:do: >> [] in MCPackageLoader>>basicLoad >> BlockClosure>>ensure: >> MCPackageLoader>>basicLoad >> [] in MCPackageLoader>>loadWithNameLike: >> [] in MCPackageLoader>>useChangeSetNamed:during: >> BlockClosure>>ensure: >> MCPackageLoader>>useChangeSetNamed:during: >> MCPackageLoader>>useNewChangeSetNamedLike:during: >> MCPackageLoader>>loadWithNameLike: >> MCVersionLoader>>load >> MCVersionLoader class>>loadVersion: >> MCDiffyVersion(MCVersion)>>load >> [] in MCConfiguration>>upgrade >> [] in MCConfiguration>>depsSatisfying:versionDo:displayingProgress: >> OrderedCollection>>do: >> MCConfiguration>>depsSatisfying:versionDo:displayingProgress: >> MCConfiguration>>upgrade >> [] in [] in [] in MCMcmUpdater class>>updateFromRepositories: >> BlockClosure>>valueWithPossibleArgument: >> SortedCollection(Collection)>>ifNotEmpty: >> ...etc... > > |
Free forum by Nabble | Edit this page |