Adam Matan
Adam Matan

Reputation: 136381

Python: subprocess.Popen never returns

I have written a Python script which runs some svn commands using subprocess.Popen. For example:

svn ls svn+ssh://url1/trunk
svn cp svn+ssh://url1/trunk svn+ssh://url1/branch/1 --parents -m "blah"

For each command, I create an subprocess.Popen object:

p = subprocesp.Popen(cmd, shell=True, stdout=sp.PIPE, stderr=sp.STDOUT)

And wait for it to finish:

output      = p.communicate()[0].strip()
return_code = p.returncode

The problem is that for some svn cp commands that fail immediately on the shell for copying inexistent repos, p.communicate() never returns.

Extra information:

Any idea what am I missing here?

Upvotes: 0

Views: 607

Answers (1)

Adam Matan
Adam Matan

Reputation: 136381

Oddly enough, the problem was Eclipse. The script works perfectly well from the shell, but waits forever in the internal Eclipse terminal.

Upvotes: 1

Related Questions