There seem to be some interesting things happening with Salmon and trinity... I realize that these are trinity issues, but I wanted to post them here as well in case others were having issues.
The only way I could get trinity to work (but still with some error messages, discussed below) was to use trinity version 2.8.5 with Salmon version 0.9.1. So, the trinity environment.yml file reads:
dependencies:
- trinity=2.8.5
And during the trinity run, the salmon environment.yml file reads:
dependencies:
- salmon=0.9.1
But then, to run Salmon (quantification) successfully, I ended up having to change the version of Salmon to 1.1.0. So, when performing quantification, I have to change the environment.yml file to reading:
dependencies:
- salmon=1.1.0
I should note that there seemed to be some issues with salmon during the trinity run, resulting in error messages as shown below in the trinity log file. The assembly did finish successfully, though. So it seems that Salmon 0.9.1 is compatible with trinity 2.8.5 only superficially since trinity ends up not using it during the run. (However, once again, this was the only version of salmon that I tried that resulted in a successful assembly)
Error, cmd:
salmon --no-version-check quant -i /automounts/workspace/workspace/zdellaert/elvers/Ast2019_allAssembly_out/assembly/trinity_out_dir/read_partitions/Fb_2/CBin_2414/c241628.trinity.reads.fa.out/Trinity.tmp.fasta.salmon.idx -l U -r /automounts/workspace/workspace/zdellaert/elvers/Ast2019_allAssembly_out/assembly/trinity_out_dir/read_partitions/Fb_2/CBin_2414/c241628.trinity.reads.fa.out/single.fa -o salmon_outdir -p 1 --minAssignedFrags 1
died with ret (256) at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../PerlLib/Process_cmd.pm line 19.
Process_cmd::process_cmd("salmon --no-version-check quant -i /automounts/workspace/work"...) called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/salmon_runner.pl line 26
--->
-salmon error reported: Error, cmd: /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/salmon_runner.pl /automounts/workspace/workspace/zdellaert/elvers/Ast2019_allAssembly_out/assembly/trinity_out_dir/read_partitions/Fb_2/CBin_2414/c241628.trinity.reads.fa.out/Trinity.tmp.fasta /automounts/workspace/workspace/zdellaert/elvers/Ast2019_allAssembly_out/assembly/trinity_out_dir/read_partitions/Fb_2/CBin_2414/c241628.trinity.reads.fa.out/single.fa 2>tmp.71822.1579714038.stderr died with ret 256 at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/PerlLib/Pipeliner.pm line 186.
Pipeliner::run(Pipeliner=HASH(0x55ead364c058)) called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../Trinity line 1819
eval {...} called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../Trinity line 1818
main::run_Trinity() called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../Trinity line 1382
eval {...} called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../Trinity line 1381
WARNING - salmon failure mode not recognized by Trinity:
Error, cmd: /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/salmon_runner.pl /automounts/workspace/workspace/zdellaert/elvers/Ast2019_allAssembly_out/assembly/trinity_out_dir/read_partitions/Fb_2/CBin_2414/c241628.trinity.reads.fa.out/Trinity.tmp.fasta /automounts/workspace/workspace/zdellaert/elvers/Ast2019_allAssembly_out/assembly/trinity_out_dir/read_partitions/Fb_2/CBin_2414/c241628.trinity.reads.fa.out/single.fa 2>tmp.71822.1579714038.stderr died with ret 256 at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/PerlLib/Pipeliner.pm line 186.
Pipeliner::run(Pipeliner=HASH(0x55ead364c058)) called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../Trinity line 1819
eval {...} called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../Trinity line 1818
main::run_Trinity() called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../Trinity line 1382
eval {...} called at /automounts/workspace/workspace/zdellaert/elvers/.snakemake/conda/fb7f8973/opt/trinity-2.8.5/util/support_scripts/../../Trinity line 1381
- retaining Trinity transcripts provided as input to salmon, w/o filtering (pre-salmon mode).
I have found similar error messages here, here, and here. Trinity and salmon have recently both been updated, so it might be worth looking into upgrading to more recent (but still compatible) versions at some point. :)
There seem to be some interesting things happening with Salmon and trinity... I realize that these are trinity issues, but I wanted to post them here as well in case others were having issues.
The only way I could get trinity to work (but still with some error messages, discussed below) was to use trinity version 2.8.5 with Salmon version 0.9.1. So, the trinity environment.yml file reads:
And during the trinity run, the salmon environment.yml file reads:
But then, to run Salmon (quantification) successfully, I ended up having to change the version of Salmon to 1.1.0. So, when performing quantification, I have to change the environment.yml file to reading:
I should note that there seemed to be some issues with salmon during the trinity run, resulting in error messages as shown below in the trinity log file. The assembly did finish successfully, though. So it seems that Salmon 0.9.1 is compatible with trinity 2.8.5 only superficially since trinity ends up not using it during the run. (However, once again, this was the only version of salmon that I tried that resulted in a successful assembly)
I have found similar error messages here, here, and here. Trinity and salmon have recently both been updated, so it might be worth looking into upgrading to more recent (but still compatible) versions at some point. :)