I've downloaded Squeak3.9a-7021.zip and uncompressed the following files:
.DS_Store 6,148 Squeak3.9a-7021.changes 24,048,371 Squeak3.9a-7021.image 18,543,740
Now, no README, no clear install instructions from http://minnow.cc.gatech.edu/squeak/5645 or http://discuss.squeakfoundation.org/cgi-bin/ezmlm-browse?list=v3dot9 so I've decide to ask here:
Should I assume to uncompress and copy from Squeak3.8-current-win-full.zipto the Squeak3.9a-7021 directory the following?
Squeak.exe 1,077,760 SqueakFFIPrims.dll 30,720 SqueakV3.sources 14,542,313
I've made those assumptions, started Squeak and opened the "SqueakMap Package Loader":
"The SqueakMap master server is running another version (2.1) than the client (2.0) You need to upgrade the SqueakMap package, would you like to do that now?"
(at this point I asked myself: if it's really needed, why to ask?)
"Yes"
And after some recompilings:
"Error ocurred when updating map SystemDictionary>>logChange: Would you like to open a debugger?" (see The log for Yes) ....
"No"
"MessageNotUnderstood: UndefinedObject>>select:" (see The log for No)
The log for Yes: ===========
MessageNotUnderstood: SystemDictionary>>logChange: 31 March 2006 1:02:16 am
VM: Win32 - a SmalltalkImage Image: Squeak3.9alpha [latest update: #7021] Working Dir C:\Squeak\Squeak3.9a-7021 Trusted Dir E:\Squeak\Squeak3.9a-7021\username Untrusted Dir C:\My Squeak\username
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true SystemDictionary(Object)>>doesNotUnderstand: #logChange: Receiver: a SystemDictionary(lots of globals) Arguments and temporary variables: aMessage: logChange: '"Installed <unknown name> auto version 9". (Smalltalk at:...etc... Receiver's instance variables: tally: 2107 array: an Array(nil nil nil nil #SMInstaller->SMInstaller #EFontBDFFontReaderFo...etc... cachedClassNames: nil
SMInstallationRegistry>>noteInstalledPackageWithId:autoVersion:name: Receiver: a SMInstallationRegistry Arguments and temporary variables: aPackageId: 'c4c13ea3-e376-42c7-8d9e-dc23b09f9f29' aVersion: '9' aName: '<unknown name>' time: 3321223291 name: '<unknown name>' id: an UUID('c4c13ea3-e376-42c7-8d9e-dc23b09f9f29') v: '9' asVersion Receiver's instance variables: installedPackages: a Dictionary(an UUID('26bea8bf-733f-4715-b188-fa6d848984ad')...etc... installCounter: 1 map: a SMSqueakMap
SMSqueakMap>>noteInstalledPackageWithId:autoVersion:name: Receiver: a SMSqueakMap Arguments and temporary variables: aPackageId: 'c4c13ea3-e376-42c7-8d9e-dc23b09f9f29' aVersion: '9' aName: '<unknown name>' Receiver's instance variables: packages: nil accounts: nil objects: nil categories: nil dir: 'sm' adminPassword: nil fileCache: a SMFileCache users: nil mutex: nil isDirty: false checkpointNumber: 0 silent: nil registry: a SMInstallationRegistry
SMSqueakMap>>noteInstalledPackageWithId:autoVersion: Receiver: a SMSqueakMap Arguments and temporary variables: aPackageId: 'c4c13ea3-e376-42c7-8d9e-dc23b09f9f29' aVersion: '9' Receiver's instance variables: packages: nil accounts: nil objects: nil categories: nil dir: 'sm' adminPassword: nil fileCache: a SMFileCache users: nil mutex: nil isDirty: false checkpointNumber: 0 silent: nil registry: a SMInstallationRegistry
--- The full stack --- SystemDictionary(Object)>>doesNotUnderstand: #logChange: SMInstallationRegistry>>noteInstalledPackageWithId:autoVersion:name: SMSqueakMap>>noteInstalledPackageWithId:autoVersion:name: SMSqueakMap>>noteInstalledPackageWithId:autoVersion: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [] in UndefinedObject>>DoIt {[(Smalltalk hasClassNamed: #SMLoader) ifTrue: [(Smalltalk at: #SMLoader) a...]} BlockContext>>ensure: CursorWithMask(Cursor)>>showWhile: UndefinedObject>>DoIt Compiler>>evaluate:in:to:notifying:ifFail:logged: Compiler class>>evaluate:for:notifying:logged: Compiler class>>evaluate:for:logged: Compiler class>>evaluate:logged: [] in ReadStream(PositionableStream)>>fileInAnnouncing: {[val := (self peekFor: $!) ifTrue: [(Compiler evaluate: self nextChunk l...]} BlockContext>>on:do: [] in ReadStream(PositionableStream)>>fileInAnnouncing: {[:bar | [self atEnd] whileFalse: [bar value: self position. self skipS...]} [] in ProgressInitiationException>>defaultMorphicAction {[result := workBlock value: progress]} BlockContext>>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: ReadStream(PositionableStream)>>fileInAnnouncing: SMSqueakMap class>>bootStrap SMSqueakMap>>checkVersion: SMSqueakMap>>loadFullFrom: SMSqueakMap>>loadUpdatesFull: SMSqueakMap>>loadFull SMSqueakMap>>loadUpdates [] in SMLoader>>loadUpdates {[squeakMap loadUpdates. self noteChanged]} BlockContext>>ensure: CursorWithMask(Cursor)>>showWhile: [] in SMLoader>>loadUpdates {[Cursor wait showWhile: [squeakMap loadUpdates. self noteChanged]]} BlockContext>>on:do: SMLoader>>loadUpdates SMLoader>>on: SMLoader class>>newOn: SMLoader class>>new SMLoader class>>open
The log for No: ========== MessageNotUnderstood: UndefinedObject>>select: 31 March 2006 2:14:01 am
VM: Win32 - a SmalltalkImage Image: Squeak3.9alpha [latest update: #7021]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true
UndefinedObject(Object)>>doesNotUnderstand: #select: Receiver: nil Arguments and temporary variables: aMessage: select: [] in SMSqueakMap>>categories {[:o | o isCategory]} Receiver's instance variables: nil
SMSqueakMap>>categories Receiver: a SMSqueakMap Arguments and temporary variables: o: nil Receiver's instance variables: packages: nil accounts: nil objects: nil categories: nil dir: 'sm' transactionCounter: 0 firstTransactionNumber: nil daysBacklog: 182 adminPassword: nil installedPackages: a Dictionary(an UUID('26bea8bf-733f-4715-b188-fa6d848984ad')...etc... installCounter: 12 fileCache: a SMFileCache users: nil mutex: nil dirtyList: nil isDirty: false checkpointNumber: 0 silent: nil
SMLoader>>categoryWrapperList Receiver: a SMLoader(548) Arguments and temporary variables: list: nil first: nil each: nil c1: nil c2: nil any: nil cat: nil Receiver's instance variables: bounds: 0@0 corner: 300@200 owner: nil submorphs: an Array(an AlignmentMorph(2192) a PluggableTextMorph(473) a SimpleH...etc... fullBounds: nil color: (Color r: 0.865 g: 0.86 b: 0.86) extension: a MorphExtension (3016) [other: (shadowColor -> (TranslucentColor r...etc... borderWidth: 1 borderColor: Color lightGray model: nil slotName: nil open: false labelString: 'SqueakMap Package Loader (0/0)' stripes: an Array(a RectangleMorph(559) a RectangleMorph(652)) label: a StringMorph(2528)'SqueakMap Package Loader (0/0)' closeBox: an IconicButton(2243) collapseBox: an IconicButton(3372) activeOnlyOnTop: true paneMorphs: an Array(a SimpleHierarchicalListMorph(2557) a PluggableTextMorph(4...etc... paneRects: nil collapsedFrame: nil fullFrame: 0@0 corner: 300@200 isCollapsed: false menuBox: an IconicButton(4061) mustNotClose: false labelWidgetAllowance: 87 updatablePanes: #() allowReframeHandles: true labelArea: an AlignmentMorph(2192) expandBox: an IconicButton(1635) squeakMap: a SMSqueakMap packagesList: #() selectedItemWrapper: nil selectedCategoryWrapper: nil filters: an OrderedCollection() categoriesToFilterIds: an OrderedCollection()
SimpleHierarchicalListMorph>>getList Receiver: a SimpleHierarchicalListMorph(1882) Arguments and temporary variables:
Receiver's instance variables: bounds: 0@0 corner: 150@120 owner: nil submorphs: an Array(a ScrollBar(3850) a TransformMorph(2302)) fullBounds: nil color: Color transparent extension: a MorphExtension (1132) [eventHandler = an EventHandler recipients: ...etc... borderWidth: 1 borderColor: Color black model: a SMLoader(548) slotName: nil open: false pinSpecs: nil scrollBar: a ScrollBar(3850) scroller: a TransformMorph(2302) retractableScrollBar: false scrollBarOnLeft: false getMenuSelector: #categoriesMenu: getMenuTitleSelector: nil scrollBarHidden: nil hasFocus: false hScrollBar: a ScrollBar(469) selectedMorph: nil getListSelector: #categoryWrapperList keystrokeActionSelector: nil autoDeselect: true columns: nil sortingSelector: nil getSelectionSelector: #selectedCategoryWrapper setSelectionSelector: #selectedCategoryWrapper: potentialDropMorph: nil lineColor: nil
--- The full stack --- UndefinedObject(Object)>>doesNotUnderstand: #select: SMSqueakMap>>categories SMLoader>>categoryWrapperList SimpleHierarchicalListMorph>>getList - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SimpleHierarchicalListMorph>>on:list:selected:changeSelected:menu:keystroke: SimpleHierarchicalListMorph class>>on:list:selected:changeSelected:menu:keystroke: SMLoader>>buildMorphicCategoriesList SMLoader>>createWindow SMLoader class>>open TheWorldMenu>>doMenuItem:with: [] in MenuItemMorph>>invokeWithEvent: {[(selArgCount := selector numArgs) = 0 ifTrue: [target perform: selector] ...]} BlockContext>>ensure: CursorWithMask(Cursor)>>showWhile: ...etc...
I'm doing something wrong? There's another way to download and install packages? Comments appreciated Cheers
bill
Howdy!
"William Hubbard" billhubard@gmail.com wrote:
I've downloaded Squeak3.9a-7021.zip and uncompressed the following files:
.DS_Store 6,148
The above is some Mac specific "droppings" :), don't know what, not needed.
Squeak3.9a-7021.changes 24,048,371 Squeak3.9a-7021.image 18,543,740
Now, no README, no clear install instructions from http://minnow.cc.gatech.edu/squeak/5645 or http://discuss.squeakfoundation.org/cgi-bin/ezmlm-browse?list=3Dv3dot9
True, because you are downloading an *alpha* image. So it is really not meant to be downloaded by a beginner. :) But anyway, the image (which has a .changes partner file - they *always* travel in pairs) changes much more often than the VM so typically what we exchange within the community is the image. The VM normally works for almost any image. :)
so I've decide to ask here:
Goodie. :)
Should I assume to uncompress and copy from Squeak3.8-current-win-full.zipto the Squeak3.9a-7021 directory the following?
Squeak.exe 1,077,760 SqueakFFIPrims.dll 30,720 SqueakV3.sources 14,542,313
I've made those assumptions,
Correct assumptions. The two first files are the VM for Win32, the FFI is included as a dll (not sure why). The third file is a file that all post 3.0 Squeak images need to have present - it is a snapshot of the full source as of Squeak version 3.0 (I think 3.0?) and then Squeak uses the .changes file which is a *fat* "diff" against this file in order to have correct sources. It is really time to make a new snapshot because the changes file is nowadays even bigger than the sources file :)
started Squeak and opened the "SqueakMap Package Loader":
"The SqueakMap master server is running another version (2.1) than the client (2.0) You need to upgrade the SqueakMap package, would you like to d= o that now?"
(at this point I asked myself: if it's really needed, why to ask?)
Well, I can think of a few reasons - like you don't want the image to be changed or whatever. :) Another very good reason is that the loader can actually still be used (the old code) but you will not be able to update your local map from the master.
"Yes"
And after some recompilings:
"Error ocurred when updating map SystemDictionary>>logChange: Would you lik= e to open a debugger?" (see The log for Yes) ....
"No"
I am fixing the above (well, was working on it yesterday) - I am the maintainer of SqueakMap and it has been lagging for a few months. The issue itself is actually a one-liner but when I started to look more closely at what needs to be done in SM for it to be properly working for 3.9 then... well, it turned out to be quite a bit of work. But I am aiming to get this out in a day or so.
[BIG SNIP]
I'm doing something wrong? There's another way to download and install pack= ages?<br> Comments appreciated<br> Cheers<br>
<br> bill<br>
You are not doing something wrong - the problem is that SqueakMap hasn't been properly updated for 3.9 yet. There are other posts on this subject with a small procedure to get around it - but... I am not taking any responsibility for SM in 3.9 as of yet - it probably works "pretty much".
regards, Göran
squeak-dev@lists.squeakfoundation.org