I had a sudden urge to program something so I revived the monkey (partly)
- full smalltalk implementation (no more ruby) - basic command line handler (could be better but works..) - using OSProcess with FileSystem-Legacy in 2.0 the only thing missing are the couple of changes I proposed for the main image: - http://code.google.com/p/pharo/issues/detail?id=7097 - http://code.google.com/p/pharo/issues/detail?id=7096 - http://code.google.com/p/pharo/issues/detail?id=7095 once they are in, we're ready to roll cami on fernet |
Yes, we love the monkey and missed him …
On 05 Dec 2012, at 04:43, Camillo Bruni <[hidden email]> wrote: > I had a sudden urge to program something so I revived the monkey (partly) > > - full smalltalk implementation (no more ruby) > - basic command line handler (could be better but works..) > - using OSProcess with FileSystem-Legacy in 2.0 > > the only thing missing are the couple of changes I proposed for the main image: > > - http://code.google.com/p/pharo/issues/detail?id=7097 > - http://code.google.com/p/pharo/issues/detail?id=7096 > - http://code.google.com/p/pharo/issues/detail?id=7095 > > once they are in, we're ready to roll > cami on fernet |
In reply to this post by Camillo Bruni-3
Cool, where can we found source code of the monkey?
-- Pavel On Wed, Dec 5, 2012 at 4:43 AM, Camillo Bruni <[hidden email]> wrote: > I had a sudden urge to program something so I revived the monkey (partly) > > - full smalltalk implementation (no more ruby) > - basic command line handler (could be better but works..) > - using OSProcess with FileSystem-Legacy in 2.0 > > the only thing missing are the couple of changes I proposed for the main image: > > - http://code.google.com/p/pharo/issues/detail?id=7097 > - http://code.google.com/p/pharo/issues/detail?id=7096 > - http://code.google.com/p/pharo/issues/detail?id=7095 > > once they are in, we're ready to roll > cami on fernet |
In reply to this post by Camillo Bruni-3
Le 05/12/2012 04:43, Camillo Bruni a écrit :
> I had a sudden urge to program something so I revived the monkey (partly) > > - full smalltalk implementation (no more ruby) > - basic command line handler (could be better but works..) > - using OSProcess with FileSystem-Legacy in 2.0 So that would be the way to have OSProcess in 2.0? Thierry > the only thing missing are the couple of changes I proposed for the main image: > > - http://code.google.com/p/pharo/issues/detail?id=7097 > - http://code.google.com/p/pharo/issues/detail?id=7096 > - http://code.google.com/p/pharo/issues/detail?id=7095 > > once they are in, we're ready to roll > cami on fernet > -- Thierry Goubier CEA list Laboratoire des Fondations des Systèmes Temps Réel Embarqués 91191 Gif sur Yvette Cedex France Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95 |
Sources are in my smalltalkhub repository: http://smalltalkhub.com/#!/~dh83/ci On 2012-12-05, at 06:28, Goubier Thierry <[hidden email]> wrote: > Le 05/12/2012 04:43, Camillo Bruni a écrit : >> I had a sudden urge to program something so I revived the monkey (partly) >> >> - full smalltalk implementation (no more ruby) >> - basic command line handler (could be better but works..) > >> - using OSProcess with FileSystem-Legacy in 2.0 > > So that would be the way to have OSProcess in 2.0? more or less: there is another deprecation warning coming from `Smalltalk osVersion` but it works... You can check the ConfigurationOfCI to see how to include it from http://smalltalkhub.com/#!/~dh83/fisleg >> the only thing missing are the couple of changes I proposed for the main image: >> >> - http://code.google.com/p/pharo/issues/detail?id=7097 >> - http://code.google.com/p/pharo/issues/detail?id=7096 >> - http://code.google.com/p/pharo/issues/detail?id=7095 >> >> once they are in, we're ready to roll >> cami on fernet |
On Dec 5, 2012, at 1:21 PM, Camillo Bruni <[hidden email]> wrote: > > Sources are in my smalltalkhub repository: > http://smalltalkhub.com/#!/~dh83/ci > > On 2012-12-05, at 06:28, Goubier Thierry <[hidden email]> wrote: >> Le 05/12/2012 04:43, Camillo Bruni a écrit : >>> I had a sudden urge to program something so I revived the monkey (partly) >>> >>> - full smalltalk implementation (no more ruby) >>> - basic command line handler (could be better but works..) >> >>> - using OSProcess with FileSystem-Legacy in 2.0 >> >> So that would be the way to have OSProcess in 2.0? "for now" :) OSProcess should load fine and without legacy when 2.0 is released > > more or less: there is another deprecation warning coming from `Smalltalk osVersion` but it works... > You can check the ConfigurationOfCI to see how to include it from > > http://smalltalkhub.com/#!/~dh83/fisleg > > >>> the only thing missing are the couple of changes I proposed for the main image: >>> >>> - http://code.google.com/p/pharo/issues/detail?id=7097 >>> - http://code.google.com/p/pharo/issues/detail?id=7096 >>> - http://code.google.com/p/pharo/issues/detail?id=7095 >>> >>> once they are in, we're ready to roll >>> cami on fernet > |
Le 05/12/2012 13:47, Esteban Lorenzano a écrit :
> > On Dec 5, 2012, at 1:21 PM, Camillo Bruni <[hidden email]> wrote: > >> >> Sources are in my smalltalkhub repository: >> http://smalltalkhub.com/#!/~dh83/ci >> >> On 2012-12-05, at 06:28, Goubier Thierry <[hidden email]> wrote: >>> Le 05/12/2012 04:43, Camillo Bruni a écrit : >>>> I had a sudden urge to program something so I revived the monkey (partly) >>>> >>>> - full smalltalk implementation (no more ruby) >>>> - basic command line handler (could be better but works..) >>> >>>> - using OSProcess with FileSystem-Legacy in 2.0 >>> >>> So that would be the way to have OSProcess in 2.0? > > "for now" :) > OSProcess should load fine and without legacy when 2.0 is released +1. But I'm longing for the ability to integrate Pharo images in a mixed language git repository by loading in there a Makefile which: Builds a Pharo-based tool: - downloads the latest Pharo image and vm - loads the additional configurations and packages as setup (filetree, for example:)) on the command line... - loads the local packages - save the built image. - install a startup shell in a bin/ or build/ directory, the image in a share/ or lib/ somewhere. I know I can do that in 2.0, but I need OSProcess... By the way, is this expected that the current directory in a Pharo image is not where the vm was started, but where the image file is kept? I have to use (PipeableOSProcess command: 'pwd') output asFileReference to get the true working directory. Thierry -- Thierry Goubier CEA list Laboratoire des Fondations des Systèmes Temps Réel Embarqués 91191 Gif sur Yvette Cedex France Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95 |
On 2012-12-05, at 10:05, Goubier Thierry <[hidden email]> wrote: > Le 05/12/2012 13:47, Esteban Lorenzano a écrit : >> >> On Dec 5, 2012, at 1:21 PM, Camillo Bruni <[hidden email]> wrote: >> >>> >>> Sources are in my smalltalkhub repository: >>> http://smalltalkhub.com/#!/~dh83/ci >>> >>> On 2012-12-05, at 06:28, Goubier Thierry <[hidden email]> wrote: >>>> Le 05/12/2012 04:43, Camillo Bruni a écrit : >>>>> I had a sudden urge to program something so I revived the monkey (partly) >>>>> >>>>> - full smalltalk implementation (no more ruby) >>>>> - basic command line handler (could be better but works..) >>>> >>>>> - using OSProcess with FileSystem-Legacy in 2.0 >>>> >>>> So that would be the way to have OSProcess in 2.0? >> >> "for now" :) >> OSProcess should load fine and without legacy when 2.0 is released > > +1. > > But I'm longing for the ability to integrate Pharo images in a mixed language git repository by loading in there a Makefile which: > > Builds a Pharo-based tool: > - downloads the latest Pharo image and vm > - loads the additional configurations and packages as setup (filetree, for example:)) on the command line... > - loads the local packages > - save the built image. > - install a startup shell in a bin/ or build/ directory, the image in a share/ or lib/ somewhere. > > I know I can do that in 2.0, but I need OSProcess... then I think you should be fine with the approach I took. I think once 2.0 is declared stable someone will take care of OSProcess. So looks like 2.0 almost covered all your needs, the only thing missing is the startup shell. Of course we can extend Pharo's command line tools a bit, they are still in early stage and need improvement.. > By the way, is this expected that the current directory in a Pharo image is not where the vm was started, but where the image file is kept? I have to use > > (PipeableOSProcess command: 'pwd') output asFileReference > > to get the true working directory. yeah, the whole working directory stuff is a mess: - FileSystem has it's own notion of working directory, - so does the rest of the Image, - the only one getting it more or less right is OSProcess :/ I wanted to unify it at some point, but well, too many things at the same time :P |
Administrator
|
I opened an issue... From http://code.google.com/p/pharo/issues/detail?id=7281 :
Cheers,
Sean |
Administrator
|
In reply to this post by Camillo Bruni-3
Yay!!!!
Cheers,
Sean |
In reply to this post by Camillo Bruni-3
On Wed, Dec 5, 2012 at 1:21 PM, Camillo Bruni <[hidden email]> wrote:
> > more or less: there is another deprecation warning coming from `Smalltalk osVersion` but it works... > You can check the ConfigurationOfCI to see how to include it from > > http://smalltalkhub.com/#!/~dh83/fisleg you don't need FileSystem-Legacy if you use OSProcess from Coral: Gofer new squeaksource3: 'coral'; package: 'OSProcess'; load. -- Damien Cassou http://damiencassou.seasidehosting.st "Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill |
On Fri, Jan 18, 2013 at 03:28:10PM +0100, Damien Cassou wrote:
> > you don't need FileSystem-Legacy if you use OSProcess from Coral: > > Gofer new > squeaksource3: 'coral'; > package: 'OSProcess'; > load. > OSProcess and CommandShell-Piping should now load cleanly in Pharo 2.0. The latest versions are OSProcess-dtl.75 and CommandShell-Piping-dtl.13 in the SqueakSource repositories for OSProcess and CommandShell. Thanks to Damien Cassou for doing the original work for OSProcess support in Coral. I adapted his work so it will now load in both Squeak and Pharo. Unit test notes: The AioEventHandlerTestCase failures are due to AioPlugin not included in the VM. I expect the tests will pass if AioPlugin is added to VM builds. Many test rely on #forkSqueak to create cooperating OS processes for the tests. These tests fail on Cog, although this does not affect basic functionality of OSProcess itself. UnixProcessAccessorTestCase>>testRedirectStdOutTo fails due to a problem introduced in the oscog branch of the OSProcessPlugin. This should be fixed in the plugin but is a minor concern and does not affect normal usage of OSProcess. Dave |
Administrator
|
Awesome!!! Thank you David. I just successfully used PipeableOSProcess in latest 2.0 with no load errors. Cheers, Sean
Cheers,
Sean |
very nice! thanks!
So that means all the FileSystem changes have been included? On 2013-01-25, at 05:14, "Sean P. DeNigris" <[hidden email]> wrote: > David T. Lewis wrote >> OSProcess and CommandShell-Piping should now load cleanly in Pharo 2.0. > > Awesome!!! Thank you David. I just successfully used PipeableOSProcess in > latest 2.0 with no load errors. > > Cheers, > Sean > > > > -- > View this message in context: http://forum.world.st/The-monkey-is-back-in-town-tp4658091p4665268.html > Sent from the Pharo Smalltalk mailing list archive at Nabble.com. > |
On Fri, Jan 25, 2013 at 10:54:40AM +0100, Camillo Bruni wrote:
> very nice! thanks! > So that means all the FileSystem changes have been included? I think so, yes. I'm not too familiar with using FileSystem yet, so let me know if I missed something. So far I have done the updates for all of OSProcess and CommandShell-Piping, but I have not yet done the rest of CommandShell. There is a lot of file system interaction in CommandShell, so that may take a while. But OSProcess is done, and class PipeableOSProcess in CommandShell-Piping is updated too. So that should be a help for many people. Dave > > On 2013-01-25, at 05:14, "Sean P. DeNigris" <[hidden email]> wrote: > > > David T. Lewis wrote > >> OSProcess and CommandShell-Piping should now load cleanly in Pharo 2.0. > > > > Awesome!!! Thank you David. I just successfully used PipeableOSProcess in > > latest 2.0 with no load errors. > > > > Cheers, > > Sean > > |
In reply to this post by David T. Lewis
Thanks a lot david!!!
Stef On Jan 24, 2013, at 10:38 PM, David T. Lewis wrote: > On Fri, Jan 18, 2013 at 03:28:10PM +0100, Damien Cassou wrote: >> >> you don't need FileSystem-Legacy if you use OSProcess from Coral: >> >> Gofer new >> squeaksource3: 'coral'; >> package: 'OSProcess'; >> load. >> > > OSProcess and CommandShell-Piping should now load cleanly in Pharo 2.0. > > The latest versions are OSProcess-dtl.75 and CommandShell-Piping-dtl.13 > in the SqueakSource repositories for OSProcess and CommandShell. > > Thanks to Damien Cassou for doing the original work for OSProcess support > in Coral. I adapted his work so it will now load in both Squeak and Pharo. > > Unit test notes: > > The AioEventHandlerTestCase failures are due to AioPlugin not included in > the VM. I expect the tests will pass if AioPlugin is added to VM builds. > > Many test rely on #forkSqueak to create cooperating OS processes for the > tests. These tests fail on Cog, although this does not affect basic > functionality of OSProcess itself. > > UnixProcessAccessorTestCase>>testRedirectStdOutTo fails due to a problem > introduced in the oscog branch of the OSProcessPlugin. This should be fixed > in the plugin but is a minor concern and does not affect normal usage > of OSProcess. > > Dave > > |
Perfect that is really great news! I will try it immediately. On 25 Jan 2013 15:08, "Stéphane Ducasse" <[hidden email]> wrote:
Thanks a lot david!!! |
In reply to this post by David T. Lewis
David T. Lewis wrote:
> On Fri, Jan 18, 2013 at 03:28:10PM +0100, Damien Cassou wrote: > >> you don't need FileSystem-Legacy if you use OSProcess from Coral: >> >> Gofer new >> squeaksource3: 'coral'; >> package: 'OSProcess'; >> load. >> >> > > OSProcess and CommandShell-Piping should now load cleanly in Pharo 2.0. > > The latest versions are OSProcess-dtl.75 and CommandShell-Piping-dtl.13 > in the SqueakSource repositories for OSProcess and CommandShell. > > Thanks to Damien Cassou for doing the original work for OSProcess support > in Coral. I adapted his work so it will now load in both Squeak and Pharo. > > Unit test notes: > > The AioEventHandlerTestCase failures are due to AioPlugin not included in > the VM. I expect the tests will pass if AioPlugin is added to VM builds. > first which tests for the plug-in, and if it fails the remaining tests become "expected failures" rather than "failures". > Many test rely on #forkSqueak to create cooperating OS processes for the > tests. These tests fail on Cog, although this does not affect basic > functionality of OSProcess itself. > > UnixProcessAccessorTestCase>>testRedirectStdOutTo fails due to a problem > introduced in the oscog branch of the OSProcessPlugin. This should be fixed > in the plugin but is a minor concern and does not affect normal usage > of OSProcess. > > Dave > > > > |
On Sat, Jan 26, 2013 at 08:50:43AM +0800, Ben Coman wrote:
> David T. Lewis wrote: > >On Fri, Jan 18, 2013 at 03:28:10PM +0100, Damien Cassou wrote: > > > >>you don't need FileSystem-Legacy if you use OSProcess from Coral: > >> > >> Gofer new > >> squeaksource3: 'coral'; > >> package: 'OSProcess'; > >> load. > >> > >> > > > >OSProcess and CommandShell-Piping should now load cleanly in Pharo 2.0. > > > >The latest versions are OSProcess-dtl.75 and CommandShell-Piping-dtl.13 > >in the SqueakSource repositories for OSProcess and CommandShell. > > > >Thanks to Damien Cassou for doing the original work for OSProcess support > >in Coral. I adapted his work so it will now load in both Squeak and Pharo. > > > >Unit test notes: > > > >The AioEventHandlerTestCase failures are due to AioPlugin not included in > >the VM. I expect the tests will pass if AioPlugin is added to VM builds. > > > Just general curiosity, is there a way to have a test queued to run > first which tests for the plug-in, and if it fails the remaining tests > become "expected failures" rather than "failures". Yes, you could do this by implementing #expectedFailures to check for the plugin and answer a different set of selectors depending on what it finds. It all depends on what you mean by an "expected failure". To me, failing to find the plugin is not an expected failure. It means that something is wrong, and somebody should do something about it. In this case it serves as a reminder to include AioPlugin in the next VM build. After all, that is one of the reasons for doing all those tests in the first place :) A related question is how to handle failures when running on some other OS (e.g. Windows) where OSProcess is really not meaningfully implemented. In that case, the failures really are expected. I allow them to fail because I wrote the tests for my own benefit as the developer (in that context, a feature that does not work on Windows really should fail the test, as it shows what still needs to be implemented), but running the tests as part of a larger suite on a range of operating systems would be a problem. I don't really have any answer for that. I suppose I could enumerate all the things that are not expected to work on a non-unix system, but that sounds like a lot of work (and no fun) to me. Dave > >Many test rely on #forkSqueak to create cooperating OS processes for the > >tests. These tests fail on Cog, although this does not affect basic > >functionality of OSProcess itself. > > > >UnixProcessAccessorTestCase>>testRedirectStdOutTo fails due to a problem > >introduced in the oscog branch of the OSProcessPlugin. This should be fixed > >in the plugin but is a minor concern and does not affect normal usage > >of OSProcess. > > > >Dave > > > > > > > > > |
On 26 Jan 2013, at 1:59, "David T. Lewis" <[hidden email]> wrote:
> On Sat, Jan 26, 2013 at 08:50:43AM +0800, Ben Coman wrote: >> David T. Lewis wrote: >>> On Fri, Jan 18, 2013 at 03:28:10PM +0100, Damien Cassou wrote: >>> >>>> you don't need FileSystem-Legacy if you use OSProcess from Coral: >>>> >>>> Gofer new >>>> squeaksource3: 'coral'; >>>> package: 'OSProcess'; >>>> load. >>>> >>>> >>> >>> OSProcess and CommandShell-Piping should now load cleanly in Pharo 2.0. >>> >>> The latest versions are OSProcess-dtl.75 and CommandShell-Piping-dtl.13 >>> in the SqueakSource repositories for OSProcess and CommandShell. >>> >>> Thanks to Damien Cassou for doing the original work for OSProcess support >>> in Coral. I adapted his work so it will now load in both Squeak and Pharo. >>> >>> Unit test notes: >>> >>> The AioEventHandlerTestCase failures are due to AioPlugin not included in >>> the VM. I expect the tests will pass if AioPlugin is added to VM builds. >>> >> Just general curiosity, is there a way to have a test queued to run >> first which tests for the plug-in, and if it fails the remaining tests >> become "expected failures" rather than "failures". > > Yes, you could do this by implementing #expectedFailures to check for the > plugin and answer a different set of selectors depending on what it finds. > > It all depends on what you mean by an "expected failure". To me, failing > to find the plugin is not an expected failure. It means that something is > wrong, and somebody should do something about it. In this case it serves > as a reminder to include AioPlugin in the next VM build. After all, that > is one of the reasons for doing all those tests in the first place :) > > A related question is how to handle failures when running on some other OS > (e.g. Windows) where OSProcess is really not meaningfully implemented. In > that case, the failures really are expected. I allow them to fail because > I wrote the tests for my own benefit as the developer (in that context, > a feature that does not work on Windows really should fail the test, as it > shows what still needs to be implemented), but running the tests as part > of a larger suite on a range of operating systems would be a problem. I > don't really have any answer for that. I suppose I could enumerate all the > things that are not expected to work on a non-unix system, but that sounds > like a lot of work (and no fun) to me. > > Dave There's still value in tests that fail on Windows, and in an ideal world those folks who need OSProcess on Windows (all of them, surely!) could then go look at the CI job to see what works and what not, and submit patches to the maintainer! frank > >>> Many test rely on #forkSqueak to create cooperating OS processes for the >>> tests. These tests fail on Cog, although this does not affect basic >>> functionality of OSProcess itself. >>> >>> UnixProcessAccessorTestCase>>testRedirectStdOutTo fails due to a problem >>> introduced in the oscog branch of the OSProcessPlugin. This should be fixed >>> in the plugin but is a minor concern and does not affect normal usage >>> of OSProcess. >>> >>> Dave >>> >>> >>> >>> >> > |
Free forum by Nabble | Edit this page |