From 8d1a0447c7abaea3716d551a8e383543dbc75f30 Mon Sep 17 00:00:00 2001 From: Gabriel Studer <gabriel.studer@unibas.ch> Date: Wed, 20 Nov 2019 11:35:35 +0100 Subject: [PATCH] set universal_newlines flag in Popen This enables string encoding in passed streams => stdout and stderr --- modules/bindings/pymod/blast.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/bindings/pymod/blast.py b/modules/bindings/pymod/blast.py index 788d46025..7ecff0896 100644 --- a/modules/bindings/pymod/blast.py +++ b/modules/bindings/pymod/blast.py @@ -192,7 +192,7 @@ def BlastVersion(blast_location=None): pattern=re.compile(r'\s*Package: blast (\d+\.\d+\.\d+),\s+') blast_pipe=subprocess.Popen(args, stdout=subprocess.PIPE, - stderr=subprocess.PIPE) + stderr=subprocess.PIPE, universal_newlines=True) lines=blast_pipe.stdout.readlines() for line in lines: @@ -264,7 +264,8 @@ def Blast(query, database, gap_open=11, gap_ext=1, matrix='BLOSUM62', ost.LogInfo('running BLAST (%s)' % ' '.join(args)) blast_pipe=subprocess.Popen(args, stderr=subprocess.PIPE, - stdout=subprocess.PIPE, stdin=subprocess.PIPE) + stdout=subprocess.PIPE, stdin=subprocess.PIPE, + universal_newlines=True) if isinstance(query, str): stdout, stderr=blast_pipe.communicate(query) else: -- GitLab