A How-To 3.9 from scratch needed

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

A How-To 3.9 from scratch needed

William Hubbard
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.zip to 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



Reply | Threaded
Open this post in threaded view
|

Re: A How-To 3.9 from scratch needed

Göran Krampe
Howdy!

"William Hubbard" <[hidden email]> 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