[squeak-dev] Trouble running OSProcess on smalltalkCI for Windows/mingw

christoph.thiede at student.hpi.uni-potsdam.de christoph.thiede at student.hpi.uni-potsdam.de
Mon Aug 30 17:39:29 UTC 2021


Hi David,

I confirm that the issue no longer persists and I could remove my workaround:

https://github.com/hpi-swa-lab/squeak-spelling-services/pull/5

Thanks for fixing! :-)

Best,
Christoph

---
Sent from Squeak Inbox Talk

On 2021-07-09T18:53:20-04:00, lewis at mail.msen.com wrote:

> Hi Christoph,
> 
> I made an update that hopefully will resolve this issue. Unfortunately
> I do not have a Windows system to test at the moment, so if you have a
> chance could you please try updating your OSProcess to OSProcess-dtl.125
> and see if it works correctly now?
> 
> Thank you!
> 
> Dave
> 
> 
> On Fri, Jul 09, 2021 at 07:57:09PM +0200, christoph.thiede at student.hpi.uni-potsdam.de wrote:
> > Hi Dave,
> > 
> > I'm not deep in the OSProcess implementation, but the following fix in the Squeak Spelling Services [1] tests have worked for me:
> > 
> > https://github.com/hpi-swa-lab/squeak-spelling-services/blob/06ae1aa8ab7fd21b2d7341c0f59ec78f7c3890f7/src/SpellingServices.package/SpellingServicesOSProcessRefresh.class/instance/setUp.st
> > 
> > Hope this helps!
> > 
> > Best,
> > Christoph
> > 
> > ---
> > 
> > Sent from Squeak Inbox Talk
> > 
> > > Hi Christoph,
> > > 
> > > Thanks for debugging this issue :-) I am travelling without
> > > much computer access for some days, but if you can please send
> > > a fix that works on your system (fileout, changeset), I'll get
> > > it integrated in OSProcess as soon as I can.
> > > 
> > > Thanks a lot!
> > > Dave
> > > 
> > > 
> > > On Mon, Jun 28, 2021 at 03:02:28PM +0000, Thiede, Christoph wrote:
> > > > Hi Dave,
> > > > 
> > > > 
> > > > I am only using simple #waitForCommand:, no forks or other advanced stuff. This works fine for me on native Windows and also in mingw (to be clear: smalltalkCI on Windows still uses the Windows binaries of OSVM, just calls them via mingw), except when I invoke OSProcess via smalltalkCI.
> > > > 
> > > > 
> > > > How does the Win32OSProcessPlugin plugin execute shell commands? I was very surprised when I realized that the "mingw context" (quotes because I don't actually have an overview of how mingw intervenes in the execution of Windows applications) affects the way OSProcess works.
> > > > 
> > > > 
> > > > Best,
> > > > 
> > > > Christoph
> > > > 
> > > > ________________________________
> > > > Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von David T. Lewis <lewis at mail.msen.com>
> > > > Gesendet: Montag, 28. Juni 2021 16:45:26
> > > > An: The general-purpose Squeak developers list
> > > > Betreff: Re: [squeak-dev] Trouble running OSProcess on smalltalkCI for Windows/mingw
> > > > 
> > > > Hi Christoph,
> > > > 
> > > > OSProcess for Windows is incomplete and most of the OSProcess/CommandShell
> > > > functionality that you see on unix (Linux, OS X) is not going to
> > > > work.
> > > > 
> > > > Levente's ProcessWrapper package may be more suitable:
> > > > http://www.squeaksource.com/ProcessWrapper
> > > > 
> > > > I'm assuming you are running a Windows VM. If you are using a VM
> > > > for Linux, I don't know what will happen, but Windows does not
> > > > support the unix fork() semantics so I expect that there would
> > > > be limitations.
> > > > 
> > > > Dave
> > > > 
> > > > 
> > > > On Mon, Jun 28, 2021 at 01:28:13PM +0000, Thiede, Christoph wrote:
> > > > > Hi all,
> > > > >
> > > > >
> > > > > while setting up smalltalkCI for a project, I am having troubles getting OSProcess to run on a GitHub Actions runner for Windows.
> > > > >
> > > > >
> > > > > My test is as simple as:
> > > > >
> > > > >
> > > > > OSProcess waitForCommand: 'whoami'
> > > > >
> > > > >
> > > > > Which, normally, should print a small string to stdout and return after no longer than a few decisonds.
> > > > >
> > > > >
> > > > > However, in my smalltalkCI test for Windows, I just keep getting timeouts, even though the username is output correctly to the CI log.
> > > > >
> > > > > I am installing OSProcess using:
> > > > > MCMcmUpdater updateFromRepository: 'http://www.squeaksource.com/OSProcess' baseName: MCMcmUpdater defaultBaseName interactive: false.
> > > > > <http://www.hpi.de/>
> > > > > I have ensured (via good old Transcript debugging) that the grimReaperProcess is running and not suspended.
> > > > > Also, there is not any other error message visible in the Transcript.
> > > > >
> > > > > How could that be? As far as I know, the GitHub runner for Windows uses the git bash (mingw), so Windows executables and APIs are still available, but the shell is a different one.
> > > > > I could also reproduce the issue when running smalltalkCI from my local git bash (mingw). Interestingly, when using the "--headful" option to inspect the image manually, I can run all tests successfully, but when the tests are run automatically in the squeak::run_tests stage, they fail again.
> > > > > What is going on here?? At the moment, I feel somehow like at my wit's end ...
> > > > >
> > > > > Did anyone of you already encountered a similar problem, or do you have any idea how to debug/solve the problem? Thanks in advance! :-)
> > > > >
> > > > > Best,
> > > > > Christoph
> > > > 
> > > > >
> > > > 
> > > > 
> > > 
> > > >
> > > 
> > > 
> >
> 
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20210830/61772983/attachment.html>


More information about the Squeak-dev mailing list