[squeak-dev] PluggableTextMorph without smalltalk shortcuts

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

[squeak-dev] PluggableTextMorph without smalltalk shortcuts

Tudor Girba-3
Hi,

Is there a way to get a PluggableTextMorph without the default  
Smalltalk shortcuts?

Until now I have something like:

(PluggableTextMorph
                on: textModel
                text: #text
                accept: #accept:notifying:
                readSelection: #selection
                menu: #menu:shifted:)
                        onKeyStrokeSend: #keystroke:from: to: textModel

I can intercept a key like (Cmd+i), but I do not know how to disable  
the default behavior.

Cheers,
Doru


--
www.tudorgirba.com

"What we can governs what we wish."




Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

Andreas.Raab
Tudor Girba wrote:
> Is there a way to get a PluggableTextMorph without the default  
> Smalltalk shortcuts?

The following is not a long-term solution, but if you're using an
updated trunk image, try the following and see if this gives you what
you need (if it does, we'll have to find a way of folding this properly
into ToolBuilder):

   TextMorph defaultEditorClass: TextEditor.

This will use the new (Cuis-based) editor which comes without the
programming shortcuts. To restore the previous behavior, execute:

   TextMorph defaultEditorClass: TextMorphEditor.

Cheers,
   - Andreas


> Until now I have something like:
>
> (PluggableTextMorph
> on: textModel
> text: #text
> accept: #accept:notifying:
> readSelection: #selection
> menu: #menu:shifted:)
> onKeyStrokeSend: #keystroke:from: to: textModel
>
> I can intercept a key like (Cmd+i), but I do not know how to disable  
> the default behavior.
>
> Cheers,
> Doru
>
>
> --
> www.tudorgirba.com
>
> "What we can governs what we wish."


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

Tudor Girba-3
Thanks, Andreas.

Unfortunately, I am running on Pharo and there is no TextEditor. Any  
idea of what I should subclass if I only have PluggableTextMorph?

Also, how do I get the latest trunk version?

Doru


On 10 Aug 2009, at 00:32, Andreas Raab wrote:

> Tudor Girba wrote:
>> Is there a way to get a PluggableTextMorph without the default  
>> Smalltalk shortcuts?
>
> The following is not a long-term solution, but if you're using an  
> updated trunk image, try the following and see if this gives you  
> what you need (if it does, we'll have to find a way of folding this  
> properly into ToolBuilder):
>
>  TextMorph defaultEditorClass: TextEditor.
>
> This will use the new (Cuis-based) editor which comes without the  
> programming shortcuts. To restore the previous behavior, execute:
>
>  TextMorph defaultEditorClass: TextMorphEditor.
>
> Cheers,
>  - Andreas
>
>
>> Until now I have something like:
>> (PluggableTextMorph
>> on: textModel
>> text: #text
>> accept: #accept:notifying:
>> readSelection: #selection
>> menu: #menu:shifted:)
>> onKeyStrokeSend: #keystroke:from: to: textModel
>> I can intercept a key like (Cmd+i), but I do not know how to  
>> disable  the default behavior.
>> Cheers,
>> Doru
>> --
>> www.tudorgirba.com
>> "What we can governs what we wish."
>
>

--
www.tudorgirba.com

"Every thing should have the right to be different."




Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

Andreas.Raab
Tudor Girba wrote:
> Also, how do I get the latest trunk version?

1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
2. Hit "Load code updates" button.
3. Sit back and enjoy.

Do note that if you update for the first time you are well advised to
not open any transcript. We're loading some fancy font stuff that can
get confused at times if there is transcript output in the middle.

Cheers,
   - Andreas

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

K. K. Subramaniam
On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
> 1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
Is there a corresponding version on Linux?

$ squeak Squeak3.10.2-trunk.image
This interpreter (vers. 6502) cannot read image file (vers. 6504).
Press CR to quit...

$ squeak -version
3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
Squeak3.10beta of 22 July 2007 [latest update: #7159]
Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009 i686
GNU/Linux
default plugin location: /usr/local/lib/squeak/3.10-5/*.so

Subbu

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

Andreas.Raab
You need a "current" VM to run it, that is a closure-capable VM.
Try this one:

http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz

Cheers,
   - Andreas

K. K. Subramaniam wrote:

> On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
>> 1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
> Is there a corresponding version on Linux?
>
> $ squeak Squeak3.10.2-trunk.image
> This interpreter (vers. 6502) cannot read image file (vers. 6504).
> Press CR to quit...
>
> $ squeak -version
> 3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
> Squeak3.10beta of 22 July 2007 [latest update: #7159]
> Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009 i686
> GNU/Linux
> default plugin location: /usr/local/lib/squeak/3.10-5/*.so
>
> Subbu
>

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

K. K. Subramaniam
On Monday 10 Aug 2009 7:56:14 am Andreas Raab wrote:
> You need a "current" VM to run it, that is a closure-capable VM.
> Try this one:
>
> http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz
Thanks. I will give this a spin.

I tried the image from ftp.squeak.org/3.10/Squeak-3.10.2-7179-basic.zip. MC
config updates from trunk loaded fine but the update code from server failed
midway due to missing class definitions.

Is this a supported image version or am I on the wrong tree?

Subbu


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

David T. Lewis
In reply to this post by Andreas.Raab
FYI, the latest version on http://squeakvm.org/unix/ is also closure-capable:

  http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz

Dave

On Sun, Aug 09, 2009 at 07:26:14PM -0700, Andreas Raab wrote:

> You need a "current" VM to run it, that is a closure-capable VM.
> Try this one:
>
> http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz
>
> Cheers,
>   - Andreas
>
> K. K. Subramaniam wrote:
> >On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
> >>1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
> >Is there a corresponding version on Linux?
> >
> >$ squeak Squeak3.10.2-trunk.image
> >This interpreter (vers. 6502) cannot read image file (vers. 6504).
> >Press CR to quit...
> >
> >$ squeak -version
> >3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
> >Squeak3.10beta of 22 July 2007 [latest update: #7159]
> >Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009 i686
> >GNU/Linux
> >default plugin location: /usr/local/lib/squeak/3.10-5/*.so
> >
> >Subbu
> >

Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

Andreas.Raab
David T. Lewis wrote:
> FYI, the latest version on http://squeakvm.org/unix/ is also closure-capable:
>
>   http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz

Oh, great! I didn't even know it was available. Did I miss an announcement?

Cheers,
   - Andreas

> On Sun, Aug 09, 2009 at 07:26:14PM -0700, Andreas Raab wrote:
>> You need a "current" VM to run it, that is a closure-capable VM.
>> Try this one:
>>
>> http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz
>>
>> Cheers,
>>   - Andreas
>>
>> K. K. Subramaniam wrote:
>>> On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
>>>> 1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
>>> Is there a corresponding version on Linux?
>>>
>>> $ squeak Squeak3.10.2-trunk.image
>>> This interpreter (vers. 6502) cannot read image file (vers. 6504).
>>> Press CR to quit...
>>>
>>> $ squeak -version
>>> 3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
>>> Squeak3.10beta of 22 July 2007 [latest update: #7159]
>>> Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009 i686
>>> GNU/Linux
>>> default plugin location: /usr/local/lib/squeak/3.10-5/*.so
>>>
>>> Subbu
>>>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

David T. Lewis
On Mon, Aug 10, 2009 at 07:45:40PM -0700, Andreas Raab wrote:
> David T. Lewis wrote:
> >FYI, the latest version on http://squeakvm.org/unix/ is also
> >closure-capable:
> >
> >  http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz
>
> Oh, great! I didn't even know it was available. Did I miss an announcement?

No, Ian updated it quietly. If he does not speak up soon, I'll mention it
publicly on his behalf ;) I think he may be planning one more rebuild, so
I don't want to pre-announce.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

Ian Piumarta-2
On Aug 10, 2009, at 7:55 PM, David T. Lewis wrote:

> No, Ian updated it quietly. If he does not speak up soon, I'll  
> mention it
> publicly on his behalf ;)

I think you just did. :)

> I think he may be planning one more rebuild, so I don't want to pre-
> announce.

The 3.10-6 VM was built from the latest (at the time) VMMaker, so it  
has closure support (and a well-behaved caps lock key) but I didn't  
spend the 2/3 of a day needed to track down the sources for all the  
plugins and update them where necessary before regenerating the  
interpreter.  Any plugin that evolved since 3.10-5 is stale in -6.  I  
will (in the next few days or so) take the time to update the plugins  
where necessary and make a -7 release (with announcement) from  
identical sources on the five or so platforms for which I can make  
binaries.

The big task after that is going to be figuring out what to do about  
libtool 2.2, which is the version present on recent Unix-based OS  
distributions and which refuses to work with the current VM sources  
for unknown and probably obscure reasons.  I'm tempted to discard the  
archaic and horribly over-complex autotools entirely, replacing them  
with something significantly simpler such as CMake.

Cheers,
Ian


Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: [Pharo-project] PluggableTextMorph without smalltalk shortcuts

Stéphane Ducasse
In reply to this post by Tudor Girba-3
The shortcut management is a huge crap in squeak.
For Botsinc I had to patch and copy the disptach table which is by  
default shared.
Now I could check what I did back then in the botsinc image.

Stef


> Hi,
>
> Is there a way to get a PluggableTextMorph without the default
> Smalltalk shortcuts?
>
> Until now I have something like:
>
> (PluggableTextMorph
> on: textModel
> text: #text
> accept: #accept:notifying:
> readSelection: #selection
> menu: #menu:shifted:)
> onKeyStrokeSend: #keystroke:from: to: textModel
>
> I can intercept a key like (Cmd+i), but I do not know how to disable
> the default behavior.
>
> Cheers,
> Doru
>
>
> --
> www.tudorgirba.com
>
> "What we can governs what we wish."
>
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

laza
In reply to this post by David T. Lewis
Hi!

I get a segmentation fault with this vm in BlockClosure>newProcess
when I try to update a trunk image.

Regards,
  Alex



On Tue, Aug 11, 2009 at 3:27 AM, David T. Lewis<[hidden email]> wrote:

> FYI, the latest version on http://squeakvm.org/unix/ is also closure-capable:
>
>  http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz
>
> Dave
>
> On Sun, Aug 09, 2009 at 07:26:14PM -0700, Andreas Raab wrote:
>> You need a "current" VM to run it, that is a closure-capable VM.
>> Try this one:
>>
>> http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz
>>
>> Cheers,
>>   - Andreas
>>
>> K. K. Subramaniam wrote:
>> >On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
>> >>1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
>> >Is there a corresponding version on Linux?
>> >
>> >$ squeak Squeak3.10.2-trunk.image
>> >This interpreter (vers. 6502) cannot read image file (vers. 6504).
>> >Press CR to quit...
>> >
>> >$ squeak -version
>> >3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
>> >Squeak3.10beta of 22 July 2007 [latest update: #7159]
>> >Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009 i686
>> >GNU/Linux
>> >default plugin location: /usr/local/lib/squeak/3.10-5/*.so
>> >
>> >Subbu
>> >
>
>



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

Re: [squeak-dev] Re: PluggableTextMorph without smalltalk shortcuts

laza
Ok, obviously I was looking at the wrong end of the stack trace. The
problem stems from the UUIDPlugin. This is the backtrace after the
crash. My version of libuuid is 1.41.4-1ubuntu1 .

Regards,
  Alex

#0  0xb7b272c6 in ?? () from /lib/libuuid.so.1
#1  0xb7b28207 in uuid_generate () from /lib/libuuid.so.1
#2  0xb7af0782 in MakeUUID (location=0x89411c48 "")
    at /home/piumarta/squeak/platforms/unix/plugins/UUIDPlugin/sqUnixUUID.c:17
#3  0xb7af06ff in primitiveMakeUUID ()
    at /home/piumarta/squeak/platforms/unix/src/plugins/UUIDPlugin/UUIDPlugin.c:115
#4  0x08058687 in dispatchFunctionPointer
(aFunctionPointer=0xb7af0670) at gnu-interp.c:4052
#5  0x08061218 in primitiveExternalCall () at gnu-interp.c:14978
#6  0x08058687 in dispatchFunctionPointer (aFunctionPointer=0x8060fa0)
at gnu-interp.c:4052
#7  0x0806c836 in interpret () at gnu-interp.c:8338
#8  0x0805703f in main (argc=2, argv=0x0, envp=0xb7d4b890)
    at /home/piumarta/squeak/platforms/unix/vm/sqUnixMain.c:1411

On Wed, Aug 12, 2009 at 6:46 AM, Alexander Lazarević<[hidden email]> wrote:

> Hi!
>
> I get a segmentation fault with this vm in BlockClosure>newProcess
> when I try to update a trunk image.
>
> Regards,
>  Alex
>
>
>
> On Tue, Aug 11, 2009 at 3:27 AM, David T. Lewis<[hidden email]> wrote:
>> FYI, the latest version on http://squeakvm.org/unix/ is also closure-capable:
>>
>>  http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz
>>
>> Dave
>>
>> On Sun, Aug 09, 2009 at 07:26:14PM -0700, Andreas Raab wrote:
>>> You need a "current" VM to run it, that is a closure-capable VM.
>>> Try this one:
>>>
>>> http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz
>>>
>>> Cheers,
>>>   - Andreas
>>>
>>> K. K. Subramaniam wrote:
>>> >On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
>>> >>1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
>>> >Is there a corresponding version on Linux?
>>> >
>>> >$ squeak Squeak3.10.2-trunk.image
>>> >This interpreter (vers. 6502) cannot read image file (vers. 6504).
>>> >Press CR to quit...
>>> >
>>> >$ squeak -version
>>> >3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
>>> >Squeak3.10beta of 22 July 2007 [latest update: #7159]
>>> >Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009 i686
>>> >GNU/Linux
>>> >default plugin location: /usr/local/lib/squeak/3.10-5/*.so
>>> >
>>> >Subbu
>>> >
>>
>>
>

Reply | Threaded
Open this post in threaded view
|

[squeak-dev] UUID plugin crashes on Linux (was Re: PluggableTextMorph without smalltalk shortcuts)

Bert Freudenberg
That is a known issue on Linux, but apparently caused by libuuid  
rather than our plugin:

http://bugs.squeak.org/view.php?id=7358
http://bugs.squeak.org/view.php?id=7371

- Bert -

On 12.08.2009, at 07:25, Alexander Lazarević wrote:

> Ok, obviously I was looking at the wrong end of the stack trace. The
> problem stems from the UUIDPlugin. This is the backtrace after the
> crash. My version of libuuid is 1.41.4-1ubuntu1 .
>
> Regards,
>  Alex
>
> #0  0xb7b272c6 in ?? () from /lib/libuuid.so.1
> #1  0xb7b28207 in uuid_generate () from /lib/libuuid.so.1
> #2  0xb7af0782 in MakeUUID (location=0x89411c48 "")
>    at /home/piumarta/squeak/platforms/unix/plugins/UUIDPlugin/
> sqUnixUUID.c:17
> #3  0xb7af06ff in primitiveMakeUUID ()
>    at /home/piumarta/squeak/platforms/unix/src/plugins/UUIDPlugin/
> UUIDPlugin.c:115
> #4  0x08058687 in dispatchFunctionPointer
> (aFunctionPointer=0xb7af0670) at gnu-interp.c:4052
> #5  0x08061218 in primitiveExternalCall () at gnu-interp.c:14978
> #6  0x08058687 in dispatchFunctionPointer (aFunctionPointer=0x8060fa0)
> at gnu-interp.c:4052
> #7  0x0806c836 in interpret () at gnu-interp.c:8338
> #8  0x0805703f in main (argc=2, argv=0x0, envp=0xb7d4b890)
>    at /home/piumarta/squeak/platforms/unix/vm/sqUnixMain.c:1411
>
> On Wed, Aug 12, 2009 at 6:46 AM, Alexander Lazarević<[hidden email]
> m> wrote:
>> Hi!
>>
>> I get a segmentation fault with this vm in BlockClosure>newProcess
>> when I try to update a trunk image.
>>
>> Regards,
>>  Alex
>>
>>
>>
>> On Tue, Aug 11, 2009 at 3:27 AM, David T.  
>> Lewis<[hidden email]> wrote:
>>> FYI, the latest version on http://squeakvm.org/unix/ is also  
>>> closure-capable:
>>>
>>>  http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz
>>>
>>> Dave
>>>
>>> On Sun, Aug 09, 2009 at 07:26:14PM -0700, Andreas Raab wrote:
>>>> You need a "current" VM to run it, that is a closure-capable VM.
>>>> Try this one:
>>>>
>>>> http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz
>>>>
>>>> Cheers,
>>>>   - Andreas
>>>>
>>>> K. K. Subramaniam wrote:
>>>>> On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
>>>>>> 1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
>>>>> Is there a corresponding version on Linux?
>>>>>
>>>>> $ squeak Squeak3.10.2-trunk.image
>>>>> This interpreter (vers. 6502) cannot read image file (vers. 6504).
>>>>> Press CR to quit...
>>>>>
>>>>> $ squeak -version
>>>>> 3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
>>>>> Squeak3.10beta of 22 July 2007 [latest update: #7159]
>>>>> Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC  
>>>>> 2009 i686
>>>>> GNU/Linux
>>>>> default plugin location: /usr/local/lib/squeak/3.10-5/*.so
>>>>>
>>>>> Subbu
>>>>>
>>>
>>>
>>
>


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] UUID plugin crashes on Linux (was Re: PluggableTextMorph without smalltalk shortcuts)

Danie Roux-3
As a work-around (really, really not ideal), remove the file
UUIDPlugin. It will then fall back to using the UUIDGenerator.

On Wed, Aug 12, 2009 at 9:56 AM, Bert Freudenberg<[hidden email]> wrote:

> That is a known issue on Linux, but apparently caused by libuuid rather than
> our plugin:
>
> http://bugs.squeak.org/view.php?id=7358
> http://bugs.squeak.org/view.php?id=7371
>
> - Bert -
>
> On 12.08.2009, at 07:25, Alexander Lazarević wrote:
>
>> Ok, obviously I was looking at the wrong end of the stack trace. The
>> problem stems from the UUIDPlugin. This is the backtrace after the
>> crash. My version of libuuid is 1.41.4-1ubuntu1 .
>>
>> Regards,
>>  Alex
>>
>> #0  0xb7b272c6 in ?? () from /lib/libuuid.so.1
>> #1  0xb7b28207 in uuid_generate () from /lib/libuuid.so.1
>> #2  0xb7af0782 in MakeUUID (location=0x89411c48 "")
>>   at
>> /home/piumarta/squeak/platforms/unix/plugins/UUIDPlugin/sqUnixUUID.c:17
>> #3  0xb7af06ff in primitiveMakeUUID ()
>>   at
>> /home/piumarta/squeak/platforms/unix/src/plugins/UUIDPlugin/UUIDPlugin.c:115
>> #4  0x08058687 in dispatchFunctionPointer
>> (aFunctionPointer=0xb7af0670) at gnu-interp.c:4052
>> #5  0x08061218 in primitiveExternalCall () at gnu-interp.c:14978
>> #6  0x08058687 in dispatchFunctionPointer (aFunctionPointer=0x8060fa0)
>> at gnu-interp.c:4052
>> #7  0x0806c836 in interpret () at gnu-interp.c:8338
>> #8  0x0805703f in main (argc=2, argv=0x0, envp=0xb7d4b890)
>>   at /home/piumarta/squeak/platforms/unix/vm/sqUnixMain.c:1411
>>
>> On Wed, Aug 12, 2009 at 6:46 AM, Alexander Lazarević<[hidden email]>
>> wrote:
>>>
>>> Hi!
>>>
>>> I get a segmentation fault with this vm in BlockClosure>newProcess
>>> when I try to update a trunk image.
>>>
>>> Regards,
>>>  Alex
>>>
>>>
>>>
>>> On Tue, Aug 11, 2009 at 3:27 AM, David T. Lewis<[hidden email]>
>>> wrote:
>>>>
>>>> FYI, the latest version on http://squeakvm.org/unix/ is also
>>>> closure-capable:
>>>>
>>>>  http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz
>>>>
>>>> Dave
>>>>
>>>> On Sun, Aug 09, 2009 at 07:26:14PM -0700, Andreas Raab wrote:
>>>>>
>>>>> You need a "current" VM to run it, that is a closure-capable VM.
>>>>> Try this one:
>>>>>
>>>>> http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz
>>>>>
>>>>> Cheers,
>>>>>  - Andreas
>>>>>
>>>>> K. K. Subramaniam wrote:
>>>>>>
>>>>>> On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
>>>>>>>
>>>>>>> 1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
>>>>>>
>>>>>> Is there a corresponding version on Linux?
>>>>>>
>>>>>> $ squeak Squeak3.10.2-trunk.image
>>>>>> This interpreter (vers. 6502) cannot read image file (vers. 6504).
>>>>>> Press CR to quit...
>>>>>>
>>>>>> $ squeak -version
>>>>>> 3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
>>>>>> Squeak3.10beta of 22 July 2007 [latest update: #7159]
>>>>>> Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009
>>>>>> i686
>>>>>> GNU/Linux
>>>>>> default plugin location: /usr/local/lib/squeak/3.10-5/*.so
>>>>>>
>>>>>> Subbu
>>>>>>
>>>>
>>>>
>>>
>>
>
>
>



--
Danie Roux *shuffle* Adore Unix - http://danieroux.com
Email / Google Talk / Jabber - [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] UUID plugin crashes on Linux (was Re: PluggableTextMorph without smalltalk shortcuts)

laza
Thanks to all of you who have replied and suggested to remove the
UUIDPlugin. This did the trick. Why not use the UUIDGenerator all the
time? What's the advantage of using libuuid? Are the benefits that
high that it is worth having a crashing vm on many unbuntu systems?
Just wondering. :S

Regards,
 Alex

On Wed, Aug 12, 2009 at 10:05 AM, Danie Roux<[hidden email]> wrote:

> As a work-around (really, really not ideal), remove the file
> UUIDPlugin. It will then fall back to using the UUIDGenerator.
>
> On Wed, Aug 12, 2009 at 9:56 AM, Bert Freudenberg<[hidden email]> wrote:
>> That is a known issue on Linux, but apparently caused by libuuid rather than
>> our plugin:
>>
>> http://bugs.squeak.org/view.php?id=7358
>> http://bugs.squeak.org/view.php?id=7371
>>
>> - Bert -
>>
>> On 12.08.2009, at 07:25, Alexander Lazarević wrote:
>>
>>> Ok, obviously I was looking at the wrong end of the stack trace. The
>>> problem stems from the UUIDPlugin. This is the backtrace after the
>>> crash. My version of libuuid is 1.41.4-1ubuntu1 .
>>>
>>> Regards,
>>>  Alex
>>>
>>> #0  0xb7b272c6 in ?? () from /lib/libuuid.so.1
>>> #1  0xb7b28207 in uuid_generate () from /lib/libuuid.so.1
>>> #2  0xb7af0782 in MakeUUID (location=0x89411c48 "")
>>>   at
>>> /home/piumarta/squeak/platforms/unix/plugins/UUIDPlugin/sqUnixUUID.c:17
>>> #3  0xb7af06ff in primitiveMakeUUID ()
>>>   at
>>> /home/piumarta/squeak/platforms/unix/src/plugins/UUIDPlugin/UUIDPlugin.c:115
>>> #4  0x08058687 in dispatchFunctionPointer
>>> (aFunctionPointer=0xb7af0670) at gnu-interp.c:4052
>>> #5  0x08061218 in primitiveExternalCall () at gnu-interp.c:14978
>>> #6  0x08058687 in dispatchFunctionPointer (aFunctionPointer=0x8060fa0)
>>> at gnu-interp.c:4052
>>> #7  0x0806c836 in interpret () at gnu-interp.c:8338
>>> #8  0x0805703f in main (argc=2, argv=0x0, envp=0xb7d4b890)
>>>   at /home/piumarta/squeak/platforms/unix/vm/sqUnixMain.c:1411
>>>
>>> On Wed, Aug 12, 2009 at 6:46 AM, Alexander Lazarević<[hidden email]>
>>> wrote:
>>>>
>>>> Hi!
>>>>
>>>> I get a segmentation fault with this vm in BlockClosure>newProcess
>>>> when I try to update a trunk image.
>>>>
>>>> Regards,
>>>>  Alex
>>>>
>>>>
>>>>
>>>> On Tue, Aug 11, 2009 at 3:27 AM, David T. Lewis<[hidden email]>
>>>> wrote:
>>>>>
>>>>> FYI, the latest version on http://squeakvm.org/unix/ is also
>>>>> closure-capable:
>>>>>
>>>>>  http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz
>>>>>
>>>>> Dave
>>>>>
>>>>> On Sun, Aug 09, 2009 at 07:26:14PM -0700, Andreas Raab wrote:
>>>>>>
>>>>>> You need a "current" VM to run it, that is a closure-capable VM.
>>>>>> Try this one:
>>>>>>
>>>>>> http://ftp.squeak.org/Exupery/vms/exupery-vm-0.15.1-linux.tz
>>>>>>
>>>>>> Cheers,
>>>>>>  - Andreas
>>>>>>
>>>>>> K. K. Subramaniam wrote:
>>>>>>>
>>>>>>> On Monday 10 Aug 2009 4:53:40 am Andreas Raab wrote:
>>>>>>>>
>>>>>>>> 1. Download http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip
>>>>>>>
>>>>>>> Is there a corresponding version on Linux?
>>>>>>>
>>>>>>> $ squeak Squeak3.10.2-trunk.image
>>>>>>> This interpreter (vers. 6502) cannot read image file (vers. 6504).
>>>>>>> Press CR to quit...
>>>>>>>
>>>>>>> $ squeak -version
>>>>>>> 3.10-5 #1 Tue May 26 15:19:13 PDT 2009 gcc 4.2.4
>>>>>>> Squeak3.10beta of 22 July 2007 [latest update: #7159]
>>>>>>> Linux ubuntu 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009
>>>>>>> i686
>>>>>>> GNU/Linux
>>>>>>> default plugin location: /usr/local/lib/squeak/3.10-5/*.so
>>>>>>>
>>>>>>> Subbu
>>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>>
>>
>
>
>
> --
> Danie Roux *shuffle* Adore Unix - http://danieroux.com
> Email / Google Talk / Jabber - [hidden email]
>
>

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] UUID plugin crashes on Linux

Hannes Hirzel
Alexander Lazarević wrote:

> Thanks to all of you who have replied and suggested to remove the
> UUIDPlugin. This did the trick. Why not use the UUIDGenerator all the
> time? What's the advantage of using libuuid? Are the benefits that
> high that it is worth having a crashing vm on many unbuntu systems?
> Just wondering. :S
>
> Regards,
>  Alex
>
>  
Yes, I would like to join into these thanks as well.

The Ubuntu installation instructions which work are


1) Get and install
http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz

2) use the image
http://squeakvm.org/win32/release/Squeak-3.10.2-trunk.zip

3) Remove the plugin (file)

   UUIDPlugin

in the directory /usr/local/lib/squeak/3.10-6


(adapted from:
http://lists.squeakfoundation.org/pipermail/squeak-dev/2009-August/138227.html)


Suggestion: It might be useful to have
something like Squeak-3.10.6a-pc-linux-gnu.tar.gz

which just eliminates step 3)


 <http://squeakvm.org/unix/release/Squeak-3.10-6.i686-pc-linux-gnu.tar.gz>

For many  people that VM would then be fine for the time being.

Hannes

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] UUID plugin crashes on Linux (was Re: PluggableTextMorph without smalltalk shortcuts)

johnmci
In reply to this post by laza

On 12-Aug-09, at 11:02 PM, Alexander Lazarević wrote:

> Thanks to all of you who have replied and suggested to remove the
> UUIDPlugin. This did the trick. Why not use the UUIDGenerator all the
> time? What's the advantage of using libuuid? Are the benefits that
> high that it is worth having a crashing vm on many unbuntu systems?
> Just wondering. :S
>
> Regards,
> Alex


Ok as the author of the UUID logic let me reply.


back in Sept 2001 I got a note from Andreas:

> * UUIDs/GUIDs on Macs:
> This is more a strategic inquiry - is there a way of getting UUIDs/
> GUIDs
> directly from MacOS?! We could make use of them for various purposes  
> and it
> would be nice if there'd be a simple way of getting them.
>
> Note that the above list is ordered by priority - I really don't  
> care as
> much about UUIDs as I do care about figuring out proxy settings.


This resulted in some paid work from Viewpoints Research Institute to  
implement on the Mac.

The basis of the work was taken from

http://ftp.ics.uci.edu/pub/ietf/webdav/uuid-guid/draft-leach-uuids-guids-01.txt

Although there was some code on the internet that calculated a UUID  
version 1 it was quite rough
and difficult to compile on os-9 as we were in the transition period  
from os-9 to os-x.  Fortunately
OS-X provided an operating system api to get a UUID.

My fall back choice then was to create a UUID version 4  in smalltalk  
code.
"For UUID version 4, it is a randomly or pseudo-randomly generated 60  
bit value."

Now there are two issues with this,  the first bug reported was a  
problem with MC on unix if I remember correctly.
I was using the random number generator that David N Smith wrote based  
on  an adaptation of the Park-Miller RNG.
This provides a good random number distribution but it does repeat and  
requires a seed number.
The first issue was reuse of the seed number which would then generate  
the same sequence of UUIDs after restarting a image, over the years  
figuring out the seed start value was an issue, some people used sound  
input (zero bytes when no mic on machine), millisecond clock, zero on  
some platform at VM startup, seconds (well that didn't work very  
well), to finally setting on using the /dev/urandom to get the four  
bytes.
Of course since the macintosh, windows, iPhone and Unix/Linux now  
provide UUID via the plugin the fallback for UUID version 4 isn't used  
much. In fact the code is such now it assume that the unix platform  
*IS* the only candidate and is hard coded with that in mind.
My concern is that the UUIDGenerator>>generateOneOrZero will generate  
a UUID that has been used in the past because the algorithm will at  
some point repeat the squence of randomness
I note the check for 100000 which resets the generator is hand waving  
to "maybe" reduce the probability.

So what can be done?
Well can the unix platform check to see if the libuuid version is a  
version that is acceptable? Either warn at startup time, or fall back  
to UUID version 4?
Or consider using bytes from /dev/random (not /dev/urandom) to build  
the UUID, really you could pull just the 60 bits needed as a sequence  
8 bytes of data.
--
=
=
=
========================================================================
John M. McIntosh <[hidden email]>   Twitter:  
squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
=
=
=
========================================================================





Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] UUID plugin crashes on Linux (was Re: PluggableTextMorph without smalltalk shortcuts)

laza
John,

thanks for taking the time to give some reference and valuable info on
how the UUID did evolve and how to resolve the current situation.

Alex

On Thu, Aug 13, 2009 at 7:17 PM, John M
McIntosh<[hidden email]> wrote:

> Ok as the author of the UUID logic let me reply.
>
>
> back in Sept 2001 I got a note from Andreas:
>
>> * UUIDs/GUIDs on Macs:
>> This is more a strategic inquiry - is there a way of getting UUIDs/GUIDs
>> directly from MacOS?! We could make use of them for various purposes and
>> it
>> would be nice if there'd be a simple way of getting them.
>>
>> Note that the above list is ordered by priority - I really don't care as
>> much about UUIDs as I do care about figuring out proxy settings.
>
>
> This resulted in some paid work from Viewpoints Research Institute to
> implement on the Mac.
>
> The basis of the work was taken from
>
> http://ftp.ics.uci.edu/pub/ietf/webdav/uuid-guid/draft-leach-uuids-guids-01.txt
>
> Although there was some code on the internet that calculated a UUID version
> 1 it was quite rough
> and difficult to compile on os-9 as we were in the transition period from
> os-9 to os-x.  Fortunately
> OS-X provided an operating system api to get a UUID.
>
> My fall back choice then was to create a UUID version 4  in smalltalk code.
> "For UUID version 4, it is a randomly or pseudo-randomly generated 60 bit
> value."
>
> Now there are two issues with this,  the first bug reported was a problem
> with MC on unix if I remember correctly.
> I was using the random number generator that David N Smith wrote based on
>  an adaptation of the Park-Miller RNG.
> This provides a good random number distribution but it does repeat and
> requires a seed number.
> The first issue was reuse of the seed number which would then generate the
> same sequence of UUIDs after restarting a image, over the years figuring out
> the seed start value was an issue, some people used sound input (zero bytes
> when no mic on machine), millisecond clock, zero on some platform at VM
> startup, seconds (well that didn't work very well), to finally setting on
> using the /dev/urandom to get the four bytes.
> Of course since the macintosh, windows, iPhone and Unix/Linux now provide
> UUID via the plugin the fallback for UUID version 4 isn't used much. In fact
> the code is such now it assume that the unix platform *IS* the only
> candidate and is hard coded with that in mind.
> My concern is that the UUIDGenerator>>generateOneOrZero will generate a UUID
> that has been used in the past because the algorithm will at some point
> repeat the squence of randomness
> I note the check for 100000 which resets the generator is hand waving to
> "maybe" reduce the probability.
>
> So what can be done?
> Well can the unix platform check to see if the libuuid version is a version
> that is acceptable? Either warn at startup time, or fall back to UUID
> version 4?
> Or consider using bytes from /dev/random (not /dev/urandom) to build the
> UUID, really you could pull just the 60 bits needed as a sequence 8 bytes of
> data.
> --
> ===========================================================================
> John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
> Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
> ===========================================================================
>
>
>
>
>
>