ZiyueYang01 / VirID

VirID: An integrated platform for the discovery and characterization of RNA Viruses
MIT License
10 stars 5 forks source link

TypeError: expected str, bytes or os.PathLike object, not int #10

Open vinicius-santos-bmc opened 2 days ago

vinicius-santos-bmc commented 2 days ago

Hi! I had this issue:

time VirID assembly_and_basic_annotation -i SRR1007830
5_1.fastq -i2 SRR10078305_2.fastq -out_dir virid_output  --threads 24
[2024-10-01 11:41:45] INFO: VirID v3.1.0
[2024-10-01 11:41:45] INFO: VirID assembly_and_basic_annotation -i SRR10078305_1.fastq -i2 SRR10078305_2.
fastq -out_dir virid_output --threads 24
[2024-10-01 11:41:45] TASK: START Primary Screen PART...
[2024-10-01 11:41:45] INFO: [assembly_and_basic_annotation] Quality control of sequencing data
[2024-10-01 11:44:09] INFO: [assembly_and_basic_annotation] Remove rRNA
[2024-10-01 11:50:40] INFO: [assembly_and_basic_annotation] Use megahit to splice reads into contigs
[2024-10-01 11:52:28] INFO: [assembly_and_basic_annotation] Running diamond blastx to compare /home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/site-packages/VirID/data/diamond_database/RdRP_230330_rmdup
[2024-10-01 11:52:29] ERROR: Uncontrolled exit resulting from an unexpected error.

================================================================================
EXCEPTION: TypeError
  MESSAGE: expected str, bytes or os.PathLike object, not int
________________________________________________________________________________

Traceback (most recent call last):
  File "/home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/site-packages/VirID/__main__.py", line 55, in main
    gt_parser.parse_options(args)
  File "/home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/site-packages/VirID/main.py", line 155, in parse_options
    self.assembly_and_basic_annotation(options)
  File "/home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/site-packages/VirID/main.py", line 51, in assembly_and_basic_annotation
    accession_tax_VirusesFlitered_file = assembly_and_basic_annotation_item.run(options,rm_rRNA_file,filename)
                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/site-packages/VirID/assembly_and_basic_annotation.py", line 120, in run
   self._diamond_item(RdRP_DB_PATH,rdrp_out_type,megahit_out_fasta,rdrp_out_fasta,output_rdrp_tsv,model)
  File "/home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/site-packages/VirID/assembly_and_basic_annotation.py", line 72, in _diamond_item
    diamond_item.run(input_file,out_tsv,model)
  File "/home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/site-packages/VirID/external/blast.py", line 95, in run
    proc = subprocess.Popen(
           ^^^^^^^^^^^^^^^^^
  File "/home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/subprocess.py", line 1026, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/home/vinisantos/anaconda3/envs/mamba/envs/virid/lib/python3.12/subprocess.py", line 1885, in _execute_child
    self.pid = _fork_exec(
               ^^^^^^^^^^^
TypeError: expected str, bytes or os.PathLike object, not int
================================================================================

What could I be doing wrong?

ZiyueYang01 commented 16 hours ago

Thanks, there is indeed one problem in the blast.py,we have fixed it in the new version (v2.0.0).

args = ['diamond','blastx', '-q', origin_file, '-d', self.database_path, '-o', 
                 output_tsv, '-e', '1E-4', '--query-gencode',str(self.translate_table), '-k', str(1), '-p', str(self.threads),'-f',str(6)]

In addition, we use fastp, which is able to process sequence data faster.