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