diff tools/protein_analysis/psortb.py @ 20:a19b3ded8f33 draft

v0.2.11 Job splitting fast-fail; RXLR tools supports HMMER2 from BioConda; Capture more version information; misc internal changes
author peterjc
date Thu, 21 Sep 2017 11:35:20 -0400
parents f3ecd80850e2
children 238eae32483c
line wrap: on
line diff
--- a/tools/protein_analysis/psortb.py	Wed Feb 01 09:46:42 2017 -0500
+++ b/tools/protein_analysis/psortb.py	Thu Sep 21 11:35:20 2017 -0400
@@ -21,10 +21,14 @@
 Additionally it ensures the header line (with the column names) starts
 with a # character as used elsewhere in Galaxy.
 """
-import sys
+
+from __future__ import print_function
+
 import os
+import sys
 import tempfile
-from seq_analysis_utils import split_fasta, run_jobs, thread_count
+
+from seq_analysis_utils import run_jobs, split_fasta, thread_count
 
 FASTA_CHUNK = 500
 
@@ -65,7 +69,8 @@
                   'Motif-_Localization', 'Motif-_Details', 'OMPMotif-_Localization', 'OMPMotif-_Details',
                   'OMSVM-_Localization', 'OMSVM-_Details', 'PPSVM-_Localization', 'PPSVM-_Details',
                   'Profile-_Localization', 'Profile-_Details',
-                  'SCL-BLAST-_Localization', 'SCL-BLAST-_Details', 'SCL-BLASTe-_Localization', 'SCL-BLASTe-_Details',
+                  'SCL-BLAST-_Localization', 'SCL-BLAST-_Details',
+                  'SCL-BLASTe-_Localization', 'SCL-BLASTe-_Details',
                   'Signal-_Localization', 'Signal-_Details',
                   'Cytoplasmic_Score', 'CytoplasmicMembrane_Score', 'Periplasmic_Score', 'OuterMembrane_Score',
                   'Extracellular_Score', 'Final_Localization', 'Final_Localization_Details', 'Final_Score',
@@ -76,7 +81,8 @@
                   'CytoSVM+_Localization', 'CytoSVM+_Details', 'ECSVM+_Localization', 'ECSVM+_Details',
                   'ModHMM+_Localization', 'ModHMM+_Details', 'Motif+_Localization', 'Motif+_Details',
                   'Profile+_Localization', 'Profile+_Details',
-                  'SCL-BLAST+_Localization', 'SCL-BLAST+_Details', 'SCL-BLASTe+_Localization', 'SCL-BLASTe+_Details',
+                  'SCL-BLAST+_Localization', 'SCL-BLAST+_Details',
+                  'SCL-BLASTe+_Localization', 'SCL-BLASTe+_Details',
                   'Signal+_Localization', 'Signal+_Details',
                   'Cytoplasmic_Score', 'CytoplasmicMembrane_Score', 'Cellwall_Score',
                   'Extracellular_Score', 'Final_Localization', 'Final_Localization_Details', 'Final_Score',
@@ -87,7 +93,8 @@
                   'CytoSVM_a_Localization', 'CytoSVM_a_Details', 'ECSVM_a_Localization', 'ECSVM_a_Details',
                   'ModHMM_a_Localization', 'ModHMM_a_Details', 'Motif_a_Localization', 'Motif_a_Details',
                   'Profile_a_Localization', 'Profile_a_Details',
-                  'SCL-BLAST_a_Localization', 'SCL-BLAST_a_Details', 'SCL-BLASTe_a_Localization', 'SCL-BLASTe_a_Details',
+                  'SCL-BLAST_a_Localization', 'SCL-BLAST_a_Details',
+                  'SCL-BLASTe_a_Localization', 'SCL-BLASTe_a_Details',
                   'Signal_a_Localization', 'Signal_a_Details',
                   'Cytoplasmic_Score', 'CytoplasmicMembrane_Score', 'Cellwall_Score',
                   'Extracellular_Score', 'Final_Localization', 'Final_Localization_Details', 'Final_Score',
@@ -122,6 +129,7 @@
         count += 1
     return count
 
+
 # Note that if the input FASTA file contains no sequences,
 # split_fasta returns an empty list (i.e. zero temp files).
 fasta_files = split_fasta(fasta_file, os.path.join(tmp_dir, "tmhmm"), FASTA_CHUNK)
@@ -139,9 +147,10 @@
     except Exception:
         pass
 
+
 if len(jobs) > 1 and num_threads > 1:
     # A small "info" message for Galaxy to show the user.
-    print "Using %i threads for %i tasks" % (min(num_threads, len(jobs)), len(jobs))
+    print("Using %i threads for %i tasks" % (min(num_threads, len(jobs)), len(jobs)))
 results = run_jobs(jobs, num_threads)
 for fasta, temp, cmd in zip(fasta_files, temp_files, jobs):
     error_level = results[cmd]
@@ -167,6 +176,6 @@
         clean_up(fasta_files + temp_files)
         sys.exit("No output from psortb")
 out_handle.close()
-print "%i records" % count
+print("%i records" % count)
 
 clean_up(fasta_files + temp_files)