[BUG] SqueakMap not working in a new image.

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

[BUG] SqueakMap not working in a new image.

Tobias Pape
Hello,

when opening the lates Trunk image, an old (I had this already a year ago) hit me:

One cannot open the  SqueakMap Browser.
Stack trace attached. (dnu: select:)

It used to be fixed by "SMSqueakMap bootStrap"
Yet, this produces another Stack Trace (dnu: do:)
It gets stuck when loding updates (

"Make sure map is updated"
map loadUpdates.

) in the Install-file.

I tracked it down to
        arrayOfRoots := self loadSegmentFrom: segment outPointers: outPointers.
in ImageSegment>>comeFullyUpOnReload: is returning nil, i.e., failing to load
the Image segment.
It seems, map.4718.sgz is no more compatible with trunk.

So Long,
        -Tobias





SqueakDebug.log (5K) Download Attachment
SqueakDebug.log (5K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [BUG] SqueakMap not working in a new image.

Chris Muller-3
I think it is very important for SqueakMap to work in the trunk image.

SqueakMap is one of the greatest things ever for Squeak.  I see it as
a presentation tool, an opportunity for authors to provide, unlike
with Monticello, one-click installs of rich code AND content.

It supports SAR's, so dependencies are not needed.  The only thing
that's needed is a tool to help people build SAR files (which I've
done, by the way, MaSarPackage, on SqueakMap.

OTOH, I would like to know why we still have the Universe Browser
button still prominently on the desktop.  Isn't the menu accessible
enough, or is Universes the new standard for where 3.11 is going?


On Mon, Mar 15, 2010 at 5:18 AM, Tobias Pape <[hidden email]> wrote:

> Hello,
>
> when opening the lates Trunk image, an old (I had this already a year ago) hit me:
>
> One cannot open the  SqueakMap Browser.
> Stack trace attached. (dnu: select:)
>
> It used to be fixed by "SMSqueakMap bootStrap"
> Yet, this produces another Stack Trace (dnu: do:)
> It gets stuck when loding updates (
>
> "Make sure map is updated"
> map loadUpdates.
>
> ) in the Install-file.
>
> I tracked it down to
>        arrayOfRoots := self loadSegmentFrom: segment outPointers: outPointers.
> in ImageSegment>>comeFullyUpOnReload: is returning nil, i.e., failing to load
> the Image segment.
> It seems, map.4718.sgz is no more compatible with trunk.
>
> So Long,
>        -Tobias
>
>
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: [BUG] SqueakMap not working in a new image.

Edgar De Cleene



On 3/15/10 5:00 PM, "Chris Muller" <[hidden email]> wrote:

>  Universes the new standard for where 3.11 is going?
Universes also is dead.

See my proposal on http://wiki.squeak.org/squeak/6148
> #('SMLoader' 'SMBase'  'ScriptLoader' 'Universes' 'Installer'  )
>        do: [:ea | (MCPackage named: ea) unload].
>        self fixObsoleteReferences

None should be in the image.

Edgar



Reply | Threaded
Open this post in threaded view
|

Re: [BUG] SqueakMap not working in a new image.

Tobias Pape

Am 2010-03-15 um 19:40 schrieb Edgar J. De Cleene:

>
> On 3/15/10 5:00 PM, "Chris Muller" <[hidden email]> wrote:
>
>> Universes the new standard for where 3.11 is going?
> Universes also is dead.
>
> See my proposal on http://wiki.squeak.org/squeak/6148
>> #('SMLoader' 'SMBase'  'ScriptLoader' 'Universes' 'Installer'  )
>>        do: [:ea | (MCPackage named: ea) unload].
>>        self fixObsoleteReferences
>
> None should be in the image.

Well, where do I publish my tools, then?
Where do I get Swazoo, Sixx and the like?

So Long,
        -Tobias

Reply | Threaded
Open this post in threaded view
|

Re: [BUG] SqueakMap not working in a new image.

Chris Muller-4
In reply to this post by Edgar De Cleene
Hi Edgar, what about Monticello itself, should that be in the image?
If so, I'm interested to know why it should be included and not
SqueakMap.

To me, we should make an exception SqueakMap in the base image and
SMLoader should be in the core.

For just a few lines of code, a base / core image can be taken from
nothing to unlimited cosmos of possibilities without the user having
to, first thing, load the package-loading system.  In this case, don't
you think a few K of memory is worth that?


On Mon, Mar 15, 2010 at 1:40 PM, Edgar J. De Cleene
<[hidden email]> wrote:

>
>
>
> On 3/15/10 5:00 PM, "Chris Muller" <[hidden email]> wrote:
>
>>  Universes the new standard for where 3.11 is going?
> Universes also is dead.
>
> See my proposal on http://wiki.squeak.org/squeak/6148
>> #('SMLoader' 'SMBase'  'ScriptLoader' 'Universes' 'Installer'  )
>>        do: [:ea | (MCPackage named: ea) unload].
>>        self fixObsoleteReferences
>
> None should be in the image.
>
> Edgar
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: [BUG] SqueakMap not working in a new image.

Nicolas Cellier
If I don't update the map, map.3291.sgz works for me.

Nicolas

2010/3/15 Chris Muller <[hidden email]>:

> Hi Edgar, what about Monticello itself, should that be in the image?
> If so, I'm interested to know why it should be included and not
> SqueakMap.
>
> To me, we should make an exception SqueakMap in the base image and
> SMLoader should be in the core.
>
> For just a few lines of code, a base / core image can be taken from
> nothing to unlimited cosmos of possibilities without the user having
> to, first thing, load the package-loading system.  In this case, don't
> you think a few K of memory is worth that?
>
>
> On Mon, Mar 15, 2010 at 1:40 PM, Edgar J. De Cleene
> <[hidden email]> wrote:
>>
>>
>>
>> On 3/15/10 5:00 PM, "Chris Muller" <[hidden email]> wrote:
>>
>>>  Universes the new standard for where 3.11 is going?
>> Universes also is dead.
>>
>> See my proposal on http://wiki.squeak.org/squeak/6148
>>> #('SMLoader' 'SMBase'  'ScriptLoader' 'Universes' 'Installer'  )
>>>        do: [:ea | (MCPackage named: ea) unload].
>>>        self fixObsoleteReferences
>>
>> None should be in the image.
>>
>> Edgar
>>
>>
>>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: [BUG] SqueakMap not working in a new image.

Göran Krampe
Nicolas Cellier wrote:
> If I don't update the map, map.3291.sgz works for me.

That is interesting. Does this work you mean:

SMSqueakMap default reload

...and it fails on the current map? What VM/OS are you on?

regards, Göran


Reply | Threaded
Open this post in threaded view
|

Re: [BUG] SqueakMap not working in a new image.

Nicolas Cellier
2010/3/15 Göran Krampe <[hidden email]>:

> Nicolas Cellier wrote:
>>
>> If I don't update the map, map.3291.sgz works for me.
>
> That is interesting. Does this work you mean:
>
> SMSqueakMap default reload
>
> ...and it fails on the current map? What VM/OS are you on?
>
> regards, Göran
>
>
>

Windows XP, Smalltalk vmVersion -> 'Squeak3.10.2 of 11 February 2010
[latest update: #9314]'

SMSqueakMap default reload works OK (map.3291.sgz).
Requesting an internet update (map.4719.sgz) does not work => Error
occured when updating map

Nicolas


MessageNotUnderstood: UndefinedObject>>do:
15 March 2010 9:38:36.824 pm

VM: Win32 - Smalltalk
Image: Squeak3.10.2 [latest update: #9705]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir C:\Smalltalk\Squeak\trunk
Trusted Dir C:\Smalltalk\Squeak\trunk\cellier
Untrusted Dir C:\Documents and Settings\cellier\Mes documents\My Squeak

UndefinedObject(Object)>>doesNotUnderstand: #do:
        Receiver: nil
        Arguments and temporary variables:
                aMessage: do: [closure] in ImageSegment>>comeFullyUpOnReload:
                exception: MessageNotUnderstood: UndefinedObject>>do:
                resumeValue: nil
        Receiver's instance variables:
nil
ImageSegment>>comeFullyUpOnReload:
        Receiver: an ImageSegment
        Arguments and temporary variables:
                smartRefStream: a SmartRefStream #[33 13 13]
                mapFakeClassesToReal: an IdentityDictionary()
                ccFixups: true
                receiverClasses: nil
                rootsToUnhiberhate: nil
                myProject: #(nil)
        Receiver's instance variables:
                arrayOfRoots: nil
                segment: a WordArrayForSegment(1929386342 511717899 20 2147483653
142082361 214...etc...
                outPointers: {SMSqueakMap . nil . true . Dictionary . SMFileCache .
SMInstallat...etc...
                state: #imported
                segmentName: nil
                fileName: nil
                endMarker: SmartRefStream(ReferenceStream)>>next
                userRootCnt: 1
                renamedClasses: nil

SmartRefStream(DataStream)>>next
        Receiver: a SmartRefStream #[33 13 13]
        Arguments and temporary variables:
                type: 16
                selector: #readShortInst
                anObject: an ImageSegment
                isARefType: true
                pos: nil
                internalObject: nil
        Receiver's instance variables:
                byteStream: a MultiByteBinaryOrTextStream #[33 13 13]
                topCall: #marked
                basePos: 143
                references: an IdentityDictionary()
                objects: an IdentityDictionary(size 51573)
                currentReference: 3167
                fwdRefEnds: an IdentityDictionary()
                blockers: an IdentityDictionary()
                skipping: an IdentitySet()
                insideASegment: false
                structures: a Dictionary(#Array->#(0) #ArrayedCollection->#(0)
#Association->#(...etc...
                steady: a Set(SMPersonalObject SmallInteger DiskProxy Dictionary
SMAccount SMCa...etc...
                reshaped: nil
                renamed: a Dictionary(#FlasherMorph->#Flasher )
                renamedConv: a Dictionary(1->#SMSqueakMap 4->#Dictionary
5->#SMFileCache 6->#SM...etc...
                superclasses: a Dictionary(#Array->#ArrayedCollection
#ArrayedCollection->#Sequ...etc...
                progressBar: nil
                objCount: nil
                classInstVars: nil

SmartRefStream(ReferenceStream)>>next
        Receiver: a SmartRefStream #[33 13 13]
        Arguments and temporary variables:
                curPosn: 3167
                skipToPosn: nil
                theObject: false
                wasSkipping: nil
                haveIt: #(false)
        Receiver's instance variables:
                byteStream: a MultiByteBinaryOrTextStream #[33 13 13]
                topCall: #marked
                basePos: 143
                references: an IdentityDictionary()
                objects: an IdentityDictionary(size 51573)
                currentReference: 3167
                fwdRefEnds: an IdentityDictionary()
                blockers: an IdentityDictionary()
                skipping: an IdentitySet()
                insideASegment: false
                structures: a Dictionary(#Array->#(0) #ArrayedCollection->#(0)
#Association->#(...etc...
                steady: a Set(SMPersonalObject SmallInteger DiskProxy Dictionary
SMAccount SMCa...etc...
                reshaped: nil
                renamed: a Dictionary(#FlasherMorph->#Flasher )
                renamedConv: a Dictionary(1->#SMSqueakMap 4->#Dictionary
5->#SMFileCache 6->#SM...etc...
                superclasses: a Dictionary(#Array->#ArrayedCollection
#ArrayedCollection->#Sequ...etc...
                progressBar: nil
                objCount: nil
                classInstVars: nil


--- The full stack ---
UndefinedObject(Object)>>doesNotUnderstand: #do:
ImageSegment>>comeFullyUpOnReload:
SmartRefStream(DataStream)>>next
SmartRefStream(ReferenceStream)>>next
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SmartRefStream>>next
SmartRefStream>>scanFrom:
ObjectScanner>>scanFrom:
[] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInAnnouncing:
BlockClosure>>on:do:
[] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInAnnouncing:
[] 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
...etc...

Reply | Threaded
Open this post in threaded view
|

Re: [BUG] SqueakMap not working in a new image.

Stéphane Rollandin
In reply to this post by Edgar De Cleene
> See my proposal on http://wiki.squeak.org/squeak/6148
>> #('SMLoader' 'SMBase'  'ScriptLoader' 'Universes' 'Installer'  )
>>         do: [:ea | (MCPackage named: ea) unload].
>>         self fixObsoleteReferences
>
> None should be in the image.

I only have to click once on a button in my development image to release
muO as a sar archive, complete with all dependencies and external
documentation files and other resources. I can then add it to the
SqueakMap server within minutes.

I would hate to have to stop thinking about more interesting and musical
things just to fix what is not broken, only because SqueakMap becomes
deprecated.

Stef