Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Open3 on Windows #4964

Closed
wants to merge 3 commits into from
Closed

Improve Open3 on Windows #4964

wants to merge 3 commits into from

Conversation

headius
Copy link
Member

@headius headius commented Jan 11, 2018

The Open3 library needs some love to be more functional on Windows.

We have never gotten back to implementing spawn properly on Windows, which is heavily used by Open3 for all its popen forms. To get around this, Windows will fall back on an older version of popen3 that only uses JVM processes. Unfortunately, that's the only method we patch, so others like open2e still try to use the broken spawn logic.

It should not be difficult to patch the other popen forms, since they're mostly just subsets of popen3.

@headius headius added this to the JRuby 9.1.16.0 milestone Jan 11, 2018
@headius
Copy link
Member Author

headius commented Jan 11, 2018

We may want to incorporate someone else's library into JRuby for Windows support, like https://github.com/enkessler/childprocess or https://github.com/djberg96/win32-process. Both use FFI to do processes "the right way" on Windows, and that would save us reimplementing things.

@headius
Copy link
Member Author

headius commented Jan 11, 2018

My mistake...childprocess just wraps ProcessBuilder as best it can, and win32-process only provides additional methods related to Windows.

@enebo enebo mentioned this pull request Jan 29, 2018
@enebo enebo modified the milestones: JRuby 9.1.16.0, JRuby 9.1.17.0 Feb 21, 2018
@headius headius mentioned this pull request Mar 27, 2018
15 tasks
@JasonLunn
Copy link
Contributor

Since this was added to the list of 9.2 Projects, is this still a blocker for the release of 9.1.17.0?

@enebo enebo modified the milestones: JRuby 9.1.17.0, JRuby 9.1.18.0 Apr 23, 2018
@enebo
Copy link
Member

enebo commented Apr 23, 2018

I moved this to .18 but I am unsure if it is resolved for .17?

@headius
Copy link
Member Author

headius commented Jun 15, 2021

This has largely been superseded by #6649 which greatly improved the functionality of open3 on Windows, combined with other fixes for subprocess launching on non-native-process environments (like Windows).

@headius headius closed this Jun 15, 2021
@headius headius added this to the Invalid or Duplicate milestone Jun 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants