OSProcess on Mac?

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

OSProcess on Mac?

bpi
Dear Squeakers,

Does OSProcess work with the latest trunk image on a Mac? If yes, what VM do I need?

I loaded the latest OSProcess-dtl.59 and OSProcess-Tests-dtl.4 from SqueakSource in a fully updated trunk image (10762). I tried to run the tests with the 5.8b12 VM and got the warning "process accessor module not available". I looked into the VM package and it does not seem to include the plugin.

I then tried the same with the 4.2.5beta1U VM which includes UnixOSProcessPlugin.bundle. I get the warning "forkSqueak requires XDisplayControlPlugin". This plugin is not included in the VM. When I proceed the image freezes for some time and the warning appears again.

Should this work? I am on an Intel Mac with Mac OS 10.6.5.

I would appreciate any tips on how to get that to work.

Cheers,
Bernhard
Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

Sean P. DeNigris
Administrator
bpi wrote
Does OSProcess work with the latest trunk image on a Mac? If yes, what VM do I need?
I've been using that version of OSProcess on 4.1 (4.2.5 VM) but never ran the tests.  When I did they blew up as well, but the basic functionality (e.g. "OSProcess command: 'open "http://google.com"'") is working in 4.1 and trunk 10762.

HTH,
Sean
Cheers,
Sean
bpi
Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

bpi
Thanks for the answer, Sean. You are right, some OSProcess commands work. Does CommandShell work for you as well?

I did the following:
- I took the latest trunk image Squeak4.2-10548-alpha from ftp.squeak.org.
- I started it with Squeak 4.2.5beta1U.app.
- I updated it. The lastest update is #10768.
- I ran the following to install OSProcess and CommandShell.

Installer squeaksource
        project: 'OSProcess';
        install: 'OSProcess';
        project: 'CommandShell';
        install: 'CommandShell'.

This loads OSProcess-dtl.59 and CommandShell-dtl.49.

- I ran your example:
OSProcess command: 'open "http://google.com"'.

This works.

- I ran OSProcess allTestResults.

Here are the results:

bp running OSProcess unit tests 12 December 2010 5:23:33 pm
OSProcess platformName => Mac OS
OSProcess platformSubtype => intel
OSProcess osVersion => 1065
OSProcess vmVersion => Squeak4.1 of 17 April 2010 [latest update: #9957] Squeak VM 4.2.5b1
size of C int: OSProcess accessor sizeOfInt ==> 4
size of C pointer: OSProcess accessor sizeOfPointer ==> 4
OSProcess versionInformation asString => #('OSProcess version 4.4.0' 'CommandShell version 4.4.13' '(not installed in this image)')
all tests completed without problems
tests results have been saved in a file named 'OSProcessTestResults-Mac OS-32bitImage-32bitHw.txt'

It seems OK to me, except perhaps the "not installed in this image".

- Then I try to run the following:
(PipeableOSProcess command: 'ls -l') upToEndOfFile

This results in two debuggers with the error NonBooleanReceiver: proceed for truth in AttachableFileStream>>upToEndOfFile because atEndOfFile returns nil.

- I also tried the following:
CommandShell new command: 'ps -aef | edit'

I get the following dialog:
"AioPlugin not present, AioEventHandler will use polling input".

When I click OK, I get three debuggers with the NonBooleanReceiver error, two in BufferedAsyncFileReadStream>>moveAvailableDataFrom: (isAtEndOfFile: returns nil) and one in ShellBuiltin>>copyUntilDoneFrom:to: (atEndOfFile returns nil).

Does this work on Mac for anyone? On which VM? Any tips on what I can try next?

Cheers,
Bernhard

Am 12.12.2010 um 00:49 schrieb Sean P. DeNigris:
> bpi wrote:
>> Does OSProcess work with the latest trunk image on a Mac? If yes, what VM
>> do I need?
> I've been using that version of OSProcess on 4.1 (4.2.5 VM) but never ran
> the tests.  When I did they blew up as well, but the basic functionality
> (e.g. "OSProcess command: 'open "http://google.com"'") is working in 4.1 and
> trunk 10762.


Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

David T. Lewis
In reply to this post by Sean P. DeNigris
On Sat, Dec 11, 2010 at 11:00:14PM +0100, Bernhard Pieber wrote:
> Dear Squeakers,
>
> Does OSProcess work with the latest trunk image on a Mac? If yes, what VM do I need?
>
> I loaded the latest OSProcess-dtl.59 and OSProcess-Tests-dtl.4 from
> SqueakSource in a fully updated trunk image (10762). I tried to run
> the tests with the 5.8b12 VM and got the warning "process accessor
> module not available". I looked into the VM package and it does not
> seem to include the plugin.

Some of the Mac VMs have been built without the OSProcessPlugin that
is required for OSProcess. Apparently this is one of them.

> I then tried the same with the 4.2.5beta1U VM which includes
> UnixOSProcessPlugin.bundle. I get the warning "forkSqueak requires
> XDisplayControlPlugin". This plugin is not included in the VM. When
> I proceed the image freezes for some time and the warning appears again.

This is a warning that I added to the latest version of OSProcess.
The issue is that for a Unix (Linux) VM running with X window, the
#forkSqueak methods can crash the VM if the XDisplayControlPlugin
is not installed (because if the forked Squeak cannot disconnect
from the X display, it will keep trying to communicate to X11 on
the same socket as the original squeak, which leads to an error
somewhere in the depths of the X11 libraries). I'm not sure if this
is the best way to handle the issue on a Mac. I'll try to have a
look at it the next time I get access to a Mac, meantime if anyone
can give me some tips here I'll appreciate it.

On Sat, Dec 11, 2010 at 03:49:13PM -0800, Sean P. DeNigris wrote:

>
> bpi wrote:
> >
> > Does OSProcess work with the latest trunk image on a Mac? If yes, what VM
> > do I need?
> >
>
> I've been using that version of OSProcess on 4.1 (4.2.5 VM) but never ran
> the tests.  When I did they blew up as well, but the basic functionality
> (e.g. "OSProcess command: 'open "http://google.com"'") is working in 4.1 and
> trunk 10762.

Some of the recent Mac VMs were built with a very out of date version
of OSProcess that causes problems on Mac, including crashes when
performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
but you check by evaluating "OSProcess accessor osppModuleVersionString".
If the result is '4.0.1' then you have the outdated plugin. You need
at least version 4.0.2 to run safely on a Mac (the current version of
OSPP is 4.4.0).

Dave


bpi
Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

bpi
Hi David,

Thanks for your detailed explanations and your help.

Am 12.12.2010 um 17:46 schrieb David T. Lewis:
> Some of the recent Mac VMs were built with a very out of date version
> of OSProcess that causes problems on Mac, including crashes when
> performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
> but you check by evaluating "OSProcess accessor osppModuleVersionString".
> If the result is '4.0.1' then you have the outdated plugin. You need
> at least version 4.0.2 to run safely on a Mac (the current version of
> OSPP is 4.4.0).
This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?

Cheers,
Bernhard
Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

David T. Lewis
Forwarding to vm-dev:

Does anyone have a recent OSProcessPlugin for Mac that they can provide
to Bernhard?

Thanks,
Dave

On Sun, Dec 12, 2010 at 05:53:12PM +0100, Bernhard Pieber wrote:

> Hi David,
>
> Thanks for your detailed explanations and your help.
>
> Am 12.12.2010 um 17:46 schrieb David T. Lewis:
> > Some of the recent Mac VMs were built with a very out of date version
> > of OSProcess that causes problems on Mac, including crashes when
> > performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
> > but you check by evaluating "OSProcess accessor osppModuleVersionString".
> > If the result is '4.0.1' then you have the outdated plugin. You need
> > at least version 4.0.2 to run safely on a Mac (the current version of
> > OSPP is 4.4.0).
> This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?
>
> Cheers,
> Bernhard

bpi
Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

bpi
In reply to this post by bpi
Am 12.12.2010 um 17:53 schrieb Bernhard Pieber:
Am 12.12.2010 um 17:46 schrieb David T. Lewis:
Some of the recent Mac VMs were built with a very out of date version
of OSProcess that causes problems on Mac, including crashes when
performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
but you check by evaluating "OSProcess accessor osppModuleVersionString".
If the result is '4.0.1' then you have the outdated plugin. You need
at least version 4.0.2 to run safely on a Mac (the current version of
OSPP is 4.4.0).
This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?
I found a VM with a more recent UnixOSProcessPlugin here:
http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz

Printing the following:
OSProcess accessor osppModuleVersionString.
results in '4.3.2'. Not the most recent one but still 212 of the 219 tests run. The only 7 failures are the known forkSqueak issue.

Now all of CommandShell works beautifully!

Thanks David for this cool package!

Cheers,
Bernhard

Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

David T. Lewis
On Sun, Dec 12, 2010 at 07:48:39PM +0100, Bernhard Pieber wrote:

> Am 12.12.2010 um 17:53 schrieb Bernhard Pieber:
> > Am 12.12.2010 um 17:46 schrieb David T. Lewis:
> >> Some of the recent Mac VMs were built with a very out of date version
> >> of OSProcess that causes problems on Mac, including crashes when
> >> performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
> >> but you check by evaluating "OSProcess accessor osppModuleVersionString".
> >> If the result is '4.0.1' then you have the outdated plugin. You need
> >> at least version 4.0.2 to run safely on a Mac (the current version of
> >> OSPP is 4.4.0).
> > This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?
> I found a VM with a more recent UnixOSProcessPlugin here:
> http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz
>
> Printing the following:
> OSProcess accessor osppModuleVersionString.
> results in '4.3.2'. Not the most recent one but still 212 of the 219 tests run. The only 7 failures are the known forkSqueak issue.
>
> Now all of CommandShell works beautifully!

Excellent, I'm glad it's working, and thanks for the feedback!

>
> Thanks David for this cool package!
>
> Cheers,
> Bernhard
>


Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

Ken G. Brown
In reply to this post by bpi
Seems to work better on Cog.app 4.0.0 at least, from http://www.mirandabanda.org/files/Cog/VM/VM.r2316/ on MacOS X 10.6.5
OSProcess accessor osppModuleVersionString. gives '4.3.2'
 
Ken G. Brown

At 5:37 PM +0100 12/12/10, Bernhard Pieber apparently wrote:

>Thanks for the answer, Sean. You are right, some OSProcess commands work. Does CommandShell work for you as well?
>
>I did the following:
>- I took the latest trunk image Squeak4.2-10548-alpha from ftp.squeak.org.
>- I started it with Squeak 4.2.5beta1U.app.
>- I updated it. The lastest update is #10768.
>- I ran the following to install OSProcess and CommandShell.
>
>Installer squeaksource
> project: 'OSProcess';
> install: 'OSProcess';
> project: 'CommandShell';
> install: 'CommandShell'.
>
>This loads OSProcess-dtl.59 and CommandShell-dtl.49.
>
>- I ran your example:
>OSProcess command: 'open "http://google.com"'.
>
>This works.
>
>- I ran OSProcess allTestResults.
>
>Here are the results:
>
>bp running OSProcess unit tests 12 December 2010 5:23:33 pm
>OSProcess platformName => Mac OS
>OSProcess platformSubtype => intel
>OSProcess osVersion => 1065
>OSProcess vmVersion => Squeak4.1 of 17 April 2010 [latest update: #9957] Squeak VM 4.2.5b1
>size of C int: OSProcess accessor sizeOfInt ==> 4
>size of C pointer: OSProcess accessor sizeOfPointer ==> 4
>OSProcess versionInformation asString => #('OSProcess version 4.4.0' 'CommandShell version 4.4.13' '(not installed in this image)')
>all tests completed without problems
>tests results have been saved in a file named 'OSProcessTestResults-Mac OS-32bitImage-32bitHw.txt'
>
>It seems OK to me, except perhaps the "not installed in this image".
>
>- Then I try to run the following:
>(PipeableOSProcess command: 'ls -l') upToEndOfFile
>
>This results in two debuggers with the error NonBooleanReceiver: proceed for truth in AttachableFileStream>>upToEndOfFile because atEndOfFile returns nil.
>
>- I also tried the following:
>CommandShell new command: 'ps -aef | edit'
>
>I get the following dialog:
>"AioPlugin not present, AioEventHandler will use polling input".
>
>When I click OK, I get three debuggers with the NonBooleanReceiver error, two in BufferedAsyncFileReadStream>>moveAvailableDataFrom: (isAtEndOfFile: returns nil) and one in ShellBuiltin>>copyUntilDoneFrom:to: (atEndOfFile returns nil).
>
>Does this work on Mac for anyone? On which VM? Any tips on what I can try next?
>
>Cheers,
>Bernhard
>
>Am 12.12.2010 um 00:49 schrieb Sean P. DeNigris:
>> bpi wrote:
>>> Does OSProcess work with the latest trunk image on a Mac? If yes, what VM
>>> do I need?
>> I've been using that version of OSProcess on 4.1 (4.2.5 VM) but never ran
>> the tests.  When I did they blew up as well, but the basic functionality
>> (e.g. "OSProcess command: 'open "http://google.com"'") is working in 4.1 and
>> trunk 10762.


Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

Ken G. Brown
In reply to this post by bpi
Version 4.2.4 of UnixOSProcessPlugin.bundle.zip appears to be at
ftp://ftp.smalltalkconsulting.com/experimental/

along with some other perhaps useful stuff like
 ftp://ftp.smalltalkconsulting.com/experimental/AioPlugin.bundle.zip

Ken G. Brown

At 7:48 PM +0100 12/12/10, Bernhard Pieber apparently wrote:

>Am 12.12.2010 um 17:53 schrieb Bernhard Pieber:
>
>>Am 12.12.2010 um 17:46 schrieb David T. Lewis:
>>
>>>Some of the recent Mac VMs were built with a very out of date version
>>>
>>>of OSProcess that causes problems on Mac, including crashes when
>>>
>>>performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
>>>
>>>but you check by evaluating "OSProcess accessor osppModuleVersionString".
>>>
>>>If the result is '4.0.1' then you have the outdated plugin. You need
>>>
>>>at least version 4.0.2 to run safely on a Mac (the current version of
>>>
>>>OSPP is 4.4.0).
>>>
>>This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?
>>
>I found a VM with a more recent UnixOSProcessPlugin here:
><http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz>http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz
>
>Printing the following:
>OSProcess accessor osppModuleVersionString.
>results in '4.3.2'. Not the most recent one but still 212 of the 219 tests run. The only 7 failures are the known forkSqueak issue.
>
>Now all of CommandShell works beautifully!
>
>Thanks David for this cool package!
>
>Cheers,
>Bernhard


Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

David T. Lewis
Ken,

Thanks a lot, this is good to know. Hopefully both the OSProcess
and AIO plugins will work for folks using the 4.2.5 VM.

By the way, I have not heard if the AioPlugin.bundle works or not,
so if anyone can give a success or failure report I'd appreciate it.
If CommandShell works without giving a warning about the missing
AioPlugin, then it's working :)

Thanks,
Dave

On Sun, Dec 12, 2010 at 12:42:42PM -0700, Ken G. Brown wrote:

> Version 4.2.4 of UnixOSProcessPlugin.bundle.zip appears to be at
> ftp://ftp.smalltalkconsulting.com/experimental/
>
> along with some other perhaps useful stuff like
>  ftp://ftp.smalltalkconsulting.com/experimental/AioPlugin.bundle.zip
>
> Ken G. Brown
>
> At 7:48 PM +0100 12/12/10, Bernhard Pieber apparently wrote:
> >Am 12.12.2010 um 17:53 schrieb Bernhard Pieber:
> >
> >>Am 12.12.2010 um 17:46 schrieb David T. Lewis:
> >>
> >>>Some of the recent Mac VMs were built with a very out of date version
> >>>
> >>>of OSProcess that causes problems on Mac, including crashes when
> >>>
> >>>performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
> >>>
> >>>but you check by evaluating "OSProcess accessor osppModuleVersionString".
> >>>
> >>>If the result is '4.0.1' then you have the outdated plugin. You need
> >>>
> >>>at least version 4.0.2 to run safely on a Mac (the current version of
> >>>
> >>>OSPP is 4.4.0).
> >>>
> >>This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?
> >>
> >I found a VM with a more recent UnixOSProcessPlugin here:
> ><http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz>http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz
> >
> >Printing the following:
> >OSProcess accessor osppModuleVersionString.
> >results in '4.3.2'. Not the most recent one but still 212 of the 219 tests run. The only 7 failures are the known forkSqueak issue.
> >
> >Now all of CommandShell works beautifully!
> >
> >Thanks David for this cool package!
> >
> >Cheers,
> >Bernhard
>

Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

Ken G. Brown
Where can I get XDisplayControlPlugin?
As Bernhard mentioned, it complains that it is missing when trying to run tests.

Ken

At 2:54 PM -0500 12/12/10, David T. Lewis apparently wrote:

>Ken,
>
>Thanks a lot, this is good to know. Hopefully both the OSProcess
>and AIO plugins will work for folks using the 4.2.5 VM.
>
>By the way, I have not heard if the AioPlugin.bundle works or not,
>so if anyone can give a success or failure report I'd appreciate it.
>If CommandShell works without giving a warning about the missing
>AioPlugin, then it's working :)
>
>Thanks,
>Dave
>
>On Sun, Dec 12, 2010 at 12:42:42PM -0700, Ken G. Brown wrote:
>> Version 4.2.4 of UnixOSProcessPlugin.bundle.zip appears to be at
>> ftp://ftp.smalltalkconsulting.com/experimental/
>>
>> along with some other perhaps useful stuff like
>>  ftp://ftp.smalltalkconsulting.com/experimental/AioPlugin.bundle.zip
>>
>> Ken G. Brown
>>
>> At 7:48 PM +0100 12/12/10, Bernhard Pieber apparently wrote:
>> >Am 12.12.2010 um 17:53 schrieb Bernhard Pieber:
>> >
>> >>Am 12.12.2010 um 17:46 schrieb David T. Lewis:
>> >>
>> >>>Some of the recent Mac VMs were built with a very out of date version
>> >>>
>> >>>of OSProcess that causes problems on Mac, including crashes when
>> >>>
>> >>>performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
>> >>>
>> >>>but you check by evaluating "OSProcess accessor osppModuleVersionString".
>> >>>
>> >>>If the result is '4.0.1' then you have the outdated plugin. You need
>> >>>
>> >>>at least version 4.0.2 to run safely on a Mac (the current version of
>> >>>
>> >>>OSPP is 4.4.0).
>> >>>
>> >>This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?
>> >>
>> >I found a VM with a more recent UnixOSProcessPlugin here:
>> ><http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz>http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz
>> >
>> >Printing the following:
>> >OSProcess accessor osppModuleVersionString.
>> >results in '4.3.2'. Not the most recent one but still 212 of the 219 tests run. The only 7 failures are the known forkSqueak issue.
>> >
>> >Now all of CommandShell works beautifully!
>> >
>> >Thanks David for this cool package!
>> >
>> >Cheers,
> > >Bernhard
>>


Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

Ken G. Brown
In reply to this post by Ken G. Brown
I tried putting UnixOSProcessPlugin.bundle 4.2.4 into the Cog.app 4.0.0 package which previously had version 4.3.2.
I've started getting UndefinedObject(Object)>>doesNotUnderstand: #wait at various times eg. during or after saving the image.
This does not happen with the original UnixOSProcessPlugin.bundle version 4.3.2 in the Cog.app.

Squeak4.2 10770, with OSProcess, VMMaker, and a bunch of other stuff installed, running on Cog 4.0.0 with UnixOSProcessPlugin.bundle 4.2.4, Mac OS X 10.6.5,

I'm just saying in case it twigs something for someone in the know.

Ken G. Brown

Full report:
=========
UndefinedObject(Object)>>doesNotUnderstand: #wait

here insert explanation of what you were doing, suspect changes you've made and so forth.

12 December 2010 2:22:20.375 pm

VM: Mac OS - Smalltalk
Image: Squeak4.2alpha [latest update: #10770]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /mySqueakStuff/Sqkb/<Trunkkb/Squeak4.2/Squeak4.2-10548-alpha
Trusted Dir /foobar/tooBar/forSqueak/bogus/
Untrusted Dir /Users/kbrownMPro/Library/Preferences/Croquet/Internet/Untrusted

UndefinedObject(Object)>>doesNotUnderstand: #wait
        Receiver: nil
        Arguments and temporary variables:
                aMessage: wait
                exception: MessageNotUnderstood: UndefinedObject>>wait
                resumeValue: nil
        Receiver's instance variables:
nil

[] in [] in UnixOSProcessAccessor>>grimReaperProcess
        Receiver: a UnixOSProcessAccessor on pid 9261
        Arguments and temporary variables:
                event: nil
                processSynchronizationDelay: a Delay(20 msecs)
        Receiver's instance variables:
                dependents: a DependentsArray(a UnixProcess with pid 9261)
                sessionIdentifier: #[32 27 5 77]
                canObtainSessionIdentifierFromPlugin: true
                hasTestEof: nil
                grimReaper: a Process in Debugger class>>openOn:context:label:contents:fullView...etc...
                sigChldSemaphore: nil

BlockClosure>>repeat
        Receiver: [closure] in [] in UnixOSProcessAccessor>>grimReaperProcess
        Arguments and temporary variables:

        Receiver's instance variables:
                outerContext: [] in UnixOSProcessAccessor>>grimReaperProcess
                startpc: 143
                numArgs: 0

[] in UnixOSProcessAccessor>>grimReaperProcess
        Receiver: a UnixOSProcessAccessor on pid 9261
        Arguments and temporary variables:
                event: nil
                processSynchronizationDelay: a Delay(20 msecs)
        Receiver's instance variables:
                dependents: a DependentsArray(a UnixProcess with pid 9261)
                sessionIdentifier: #[32 27 5 77]
                canObtainSessionIdentifierFromPlugin: true
                hasTestEof: nil
                grimReaper: a Process in Debugger class>>openOn:context:label:contents:fullView...etc...
                sigChldSemaphore: nil


--- The full stack ---
UndefinedObject(Object)>>doesNotUnderstand: #wait
[] in [] in UnixOSProcessAccessor>>grimReaperProcess
BlockClosure>>repeat
[] in UnixOSProcessAccessor>>grimReaperProcess
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
[] in BlockClosure>>newProcess

Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

David T. Lewis
In reply to this post by Ken G. Brown
On Sun, Dec 12, 2010 at 01:03:21PM -0700, Ken G. Brown wrote:
> Where can I get XDisplayControlPlugin?
> As Bernhard mentioned, it complains that it is missing when trying to run tests.
>
> Ken

XDisplayControlPlugin is on SqueakSource in project XDCP. There
are now three plugins used by OSProcess, all of which started out
as part of the OSProcessPlugin, but over time I split them apart
into separate plugins. These are:

        http://squeaksource.com/OSProcessPlugin
        http://squeaksource.com/AioPlugin
        http://squeaksource.com/XDCP

It should be possible to compile XDisplayControlPlugin on Mac,
but if I understand correctly (?) the Mac VM does not use X window
for its display, so the XDisplayControlPlugin would not serve any
useful purpose on the Mac VM. OSProcessPlugin definitely works on
Mac, and I expect that AioPlugin should work, although I can not
personally confirm it.

So this is a long-winded way of saying the the forkSqueak function
is basically a unix/X11 hack, and I don't really know what it would
take to implement something similar for the Mac VM.

Dave

>
> At 2:54 PM -0500 12/12/10, David T. Lewis apparently wrote:
> >Ken,
> >
> >Thanks a lot, this is good to know. Hopefully both the OSProcess
> >and AIO plugins will work for folks using the 4.2.5 VM.
> >
> >By the way, I have not heard if the AioPlugin.bundle works or not,
> >so if anyone can give a success or failure report I'd appreciate it.
> >If CommandShell works without giving a warning about the missing
> >AioPlugin, then it's working :)
> >
> >Thanks,
> >Dave
> >
> >On Sun, Dec 12, 2010 at 12:42:42PM -0700, Ken G. Brown wrote:
> >> Version 4.2.4 of UnixOSProcessPlugin.bundle.zip appears to be at
> >> ftp://ftp.smalltalkconsulting.com/experimental/
> >>
> >> along with some other perhaps useful stuff like
> >>  ftp://ftp.smalltalkconsulting.com/experimental/AioPlugin.bundle.zip
> >>
> >> Ken G. Brown
> >>
> >> At 7:48 PM +0100 12/12/10, Bernhard Pieber apparently wrote:
> >> >Am 12.12.2010 um 17:53 schrieb Bernhard Pieber:
> >> >
> >> >>Am 12.12.2010 um 17:46 schrieb David T. Lewis:
> >> >>
> >> >>>Some of the recent Mac VMs were built with a very out of date version
> >> >>>
> >> >>>of OSProcess that causes problems on Mac, including crashes when
> >> >>>
> >> >>>performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
> >> >>>
> >> >>>but you check by evaluating "OSProcess accessor osppModuleVersionString".
> >> >>>
> >> >>>If the result is '4.0.1' then you have the outdated plugin. You need
> >> >>>
> >> >>>at least version 4.0.2 to run safely on a Mac (the current version of
> >> >>>
> >> >>>OSPP is 4.4.0).
> >> >>>
> >> >>This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?
> >> >>
> >> >I found a VM with a more recent UnixOSProcessPlugin here:
> >> ><http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz>http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz
> >> >
> >> >Printing the following:
> >> >OSProcess accessor osppModuleVersionString.
> >> >results in '4.3.2'. Not the most recent one but still 212 of the 219 tests run. The only 7 failures are the known forkSqueak issue.
> >> >
> >> >Now all of CommandShell works beautifully!
> >> >
> >> >Thanks David for this cool package!
> >> >
> >> >Cheers,
> > > >Bernhard
> >>
>

Reply | Threaded
Open this post in threaded view
|

Re: OSProcess on Mac?

Ken G. Brown
At 8:15 PM -0500 12/12/10, David T. Lewis apparently wrote:

>On Sun, Dec 12, 2010 at 01:03:21PM -0700, Ken G. Brown wrote:
>> Where can I get XDisplayControlPlugin?
>> As Bernhard mentioned, it complains that it is missing when trying to run tests.
>>
>> Ken
>
>XDisplayControlPlugin is on SqueakSource in project XDCP. There
>are now three plugins used by OSProcess, all of which started out
>as part of the OSProcessPlugin, but over time I split them apart
>into separate plugins. These are:
>
> http://squeaksource.com/OSProcessPlugin
> http://squeaksource.com/AioPlugin
> http://squeaksource.com/XDCP
>
>It should be possible to compile XDisplayControlPlugin on Mac,
>but if I understand correctly (?) the Mac VM does not use X window
>for its display, so the XDisplayControlPlugin would not serve any
>useful purpose on the Mac VM. OSProcessPlugin definitely works on
>Mac, and I expect that AioPlugin should work, although I can not
>personally confirm it.

On Mac when I put AioPlugin.bundle 2.2 from <ftp://ftp.smalltalkconsulting.com/experimental/> into the resources folder of the Cog.app package 4.0.0 from <http://www.mirandabanda.org/files/Cog/VM/VM.r2316/>, and run Squeak4.2->10776 on it with the OSProcess/CommandShell and AioPlugin stuff loaded I get the following:

OSProcess command: 'open "http://google.com"'.  -> opens the www site with Safari
(PipeableOSProcess command: 'ls -l') upToEndOfFile. -> gives the listing
OSProcess accessor osppModuleVersionString.  -> '4.3.2'
CommandShell new command: 'ps -aef | edit'    -> gives a notifier:
--
aio event forwarding not supported
Select Proceed to continue, or close this window to cancel the operation.
--
proceeding hangs the VM.

Ken

>
>So this is a long-winded way of saying the the forkSqueak function
>is basically a unix/X11 hack, and I don't really know what it would
>take to implement something similar for the Mac VM.
>
>Dave
>
>>
>> At 2:54 PM -0500 12/12/10, David T. Lewis apparently wrote:
>> >Ken,
>> >
>> >Thanks a lot, this is good to know. Hopefully both the OSProcess
>> >and AIO plugins will work for folks using the 4.2.5 VM.
>> >
>> >By the way, I have not heard if the AioPlugin.bundle works or not,
>> >so if anyone can give a success or failure report I'd appreciate it.
>> >If CommandShell works without giving a warning about the missing
>> >AioPlugin, then it's working :)
>> >
>> >Thanks,
>> >Dave
>> >
>> >On Sun, Dec 12, 2010 at 12:42:42PM -0700, Ken G. Brown wrote:
>> >> Version 4.2.4 of UnixOSProcessPlugin.bundle.zip appears to be at
>> >> ftp://ftp.smalltalkconsulting.com/experimental/
>> >>
>> >> along with some other perhaps useful stuff like
>> >>  ftp://ftp.smalltalkconsulting.com/experimental/AioPlugin.bundle.zip
>> >>
>> >> Ken G. Brown
>> >>
>> >> At 7:48 PM +0100 12/12/10, Bernhard Pieber apparently wrote:
>> >> >Am 12.12.2010 um 17:53 schrieb Bernhard Pieber:
>> >> >
>> >> >>Am 12.12.2010 um 17:46 schrieb David T. Lewis:
>> >> >>
>> >> >>>Some of the recent Mac VMs were built with a very out of date version
>> >> >>>
>> >> >>>of OSProcess that causes problems on Mac, including crashes when
>> >> >>>
>> >> >>>performing #forkSqueak. I'm not sure if the 4.2.5 VM has this issue,
>> >> >>>
>> >> >>>but you check by evaluating "OSProcess accessor osppModuleVersionString".
>> >> >>>
>> >> >>>If the result is '4.0.1' then you have the outdated plugin. You need
>> >> >>>
>> >> >>>at least version 4.0.2 to run safely on a Mac (the current version of
>> >> >>>
>> >> >>>OSPP is 4.4.0).
>> >> >>>
>> >> >>This seems to be my problem. I have the outdated 4.0.1. Can I get the most recent one built for Mac from somewhere?
>> >> >>
>> >> >I found a VM with a more recent UnixOSProcessPlugin here:
>> >> ><http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz>http://www.mirandabanda.org/files/Cog/VM/VM.r2316/Cog.app.tgz
>> >> >
>> >> >Printing the following:
>> >> >OSProcess accessor osppModuleVersionString.
>> >> >results in '4.3.2'. Not the most recent one but still 212 of the 219 tests run. The only 7 failures are the known forkSqueak issue.
> > >> >
>> >> >Now all of CommandShell works beautifully!
>> >> >
>> >> >Thanks David for this cool package!
>> >> >
>> >> >Cheers,
>> > > >Bernhard
>> >>
>>