Hi Dave,<br>
<br>
I'm not deep in the OSProcess implementation, but the following fix in the Squeak Spelling Services [1] tests have worked for me:<br>
<br>
<a href="https://github.com/hpi-swa-lab/squeak-spelling-services/blob/06ae1aa8ab7fd21b2d7341c0f59ec78f7c3890f7/src/SpellingServices.package/SpellingServicesOSProcessRefresh.class/instance/setUp.st">https://github.com/hpi-swa-lab/squeak-spelling-services/blob/06ae1aa8ab7fd21b2d7341c0f59ec78f7c3890f7/src/SpellingServices.package/SpellingServicesOSProcessRefresh.class/instance/setUp.st</a><br>
<br>
Hope this helps!<br>
<br>
Best,<br>
Christoph<br>
<br>
<font color="#808080">---<br>
<br>
</font><i><font color="#808080">Sent from </font></i><i><u><a href="https://github.com/hpi-swa-lab/squeak-inbox-talk"><font color="#808080">Squeak Inbox Talk</font></a></u></i><br>
<br>
> Hi Christoph,<br>
> <br>
> Thanks for debugging this issue :-) I am travelling without<br>
> much computer access for some days, but if you can please send<br>
> a fix that works on your system (fileout, changeset), I'll get<br>
> it integrated in OSProcess as soon as I can.<br>
> <br>
> Thanks a lot!<br>
> Dave<br>
> <br>
> <br>
> On Mon, Jun 28, 2021 at 03:02:28PM +0000, Thiede, Christoph wrote:<br>
> > Hi Dave,<br>
> > <br>
> > <br>
> > 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.<br>
> > <br>
> > <br>
> > 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.<br>
> > <br>
> > <br>
> > Best,<br>
> > <br>
> > Christoph<br>
> > <br>
> > ________________________________<br>
> > Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von David T. Lewis <lewis at mail.msen.com><br>
> > Gesendet: Montag, 28. Juni 2021 16:45:26<br>
> > An: The general-purpose Squeak developers list<br>
> > Betreff: Re: [squeak-dev] Trouble running OSProcess on smalltalkCI for Windows/mingw<br>
> > <br>
> > Hi Christoph,<br>
> > <br>
> > OSProcess for Windows is incomplete and most of the OSProcess/CommandShell<br>
> > functionality that you see on unix (Linux, OS X) is not going to<br>
> > work.<br>
> > <br>
> > Levente's ProcessWrapper package may be more suitable:<br>
> > http://www.squeaksource.com/ProcessWrapper<br>
> > <br>
> > I'm assuming you are running a Windows VM. If you are using a VM<br>
> > for Linux, I don't know what will happen, but Windows does not<br>
> > support the unix fork() semantics so I expect that there would<br>
> > be limitations.<br>
> > <br>
> > Dave<br>
> > <br>
> > <br>
> > On Mon, Jun 28, 2021 at 01:28:13PM +0000, Thiede, Christoph wrote:<br>
> > > Hi all,<br>
> > ><br>
> > ><br>
> > > while setting up smalltalkCI for a project, I am having troubles getting OSProcess to run on a GitHub Actions runner for Windows.<br>
> > ><br>
> > ><br>
> > > My test is as simple as:<br>
> > ><br>
> > ><br>
> > > OSProcess waitForCommand: 'whoami'<br>
> > ><br>
> > ><br>
> > > Which, normally, should print a small string to stdout and return after no longer than a few decisonds.<br>
> > ><br>
> > ><br>
> > > However, in my smalltalkCI test for Windows, I just keep getting timeouts, even though the username is output correctly to the CI log.<br>
> > ><br>
> > > I am installing OSProcess using:<br>
> > > MCMcmUpdater updateFromRepository: 'http://www.squeaksource.com/OSProcess' baseName: MCMcmUpdater defaultBaseName interactive: false.<br>
> > > <http://www.hpi.de/><br>
> > > I have ensured (via good old Transcript debugging) that the grimReaperProcess is running and not suspended.<br>
> > > Also, there is not any other error message visible in the Transcript.<br>
> > ><br>
> > > 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.<br>
> > > 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.<br>
> > > What is going on here?? At the moment, I feel somehow like at my wit's end ...<br>
> > ><br>
> > > Did anyone of you already encountered a similar problem, or do you have any idea how to debug/solve the problem? Thanks in advance! :-)<br>
> > ><br>
> > > Best,<br>
> > > Christoph<br>
> > <br>
> > ><br>
> > <br>
> > <br>
> <br>
> ><br>
> <br>