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

Andreas Raab andreas.raab at gmx.de
Tue Jun 15 05:15:53 UTC 2010


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, 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