[squeak-dev] Re: Trunk update config map question

Frank Shearar frank.shearar at angband.za.org
Sat Jun 12 16:40:07 UTC 2010


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, commits at source.squeak.org 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...
>
>
>




More information about the Squeak-dev mailing list