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

Piper, for piping from/to spawned processes #417

Merged
merged 8 commits into from Apr 13, 2014
Merged

Conversation

@ddfreyne
Copy link
Member

@ddfreyne ddfreyne commented Apr 12, 2014

The Piper class is a wrapper around #popen3. This is intended to replace the use of systemu, which does not work reliably on JRuby.

Built-in classes FTW.

Diff best viewed with ?w=1, because some if_have 'systemu' do … end blocks were removed.

To do:

  • Implement sending data through stdin
  • Migrate other parts that use #popen3 or systemu to Piper
@ddfreyne
Copy link
Member Author

@ddfreyne ddfreyne commented Apr 13, 2014

Loading

@bobthecow
Copy link
Member

@bobthecow bobthecow commented Apr 13, 2014

Looks good. I like splitting all the spawning business out into a nice wrapper like that. I don't see any glaring holes.

That said, I haven't spent enough time with popen3 to be confident that I'd catch anything if there was an issue.

So 👍 with caveats :)

Loading

@ddfreyne ddfreyne merged commit 940411d into release-3.6.x Apr 13, 2014
1 check passed
Loading
@ddfreyne
Copy link
Member Author

@ddfreyne ddfreyne commented Apr 13, 2014

Well, at least this approach works on Rubies 1.x and 2.x, and on JRuby!

Loading

@ddfreyne ddfreyne deleted the bug/jruby-pipes branch Apr 13, 2014
@ddfreyne ddfreyne mentioned this pull request Apr 13, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants