chloroExtractorTeam / chloroExtractor

MIT License
4 stars 8 forks source link

Use of relative paths (seen with spades) #88

Open jdeligt opened 6 years ago

jdeligt commented 6 years ago

There seem to be some issues in the way you use spades (3.11.0) with relative paths:

running this: assemble_spades.pl -1 kfr2_1.fq -2 kfr2_2.fq -o ass --threads 2

results in this: /usr/local/bin/spades.py --only-assembler -1 /private/tmp/chloroExtractor-testrun/ptx/kfr2_1.fq -2 /private/tmp/chloroExtractor-testrun/ptx/kfr2_2.fq -o /private/tmp/chloroExtractor-testrun/ptx/ass

while the data/working directory is this: /tmp/chloroExtractor-testrun/ptx

specifying full paths resolves this:

assemble_spades.pl -1 /tmp/chloroExtractor-testrun/ptx/kfr2_1.fq -2 /tmp/chloroExtractor-testrun/ptx/kfr2_2.fq -o /tmp/chloroExtractor-testrun/ptx/ass
->
/usr/local/bin/spades.py    --only-assembler    -1  /tmp/chloroExtractor-testrun/ptx/kfr2_1.fq  -2  /tmp/chloroExtractor-testrun/ptx/kfr2_2.fq  -o  /tmp/chloroExtractor-testrun/ptx/ass
greatfireball commented 6 years ago

Thx for the report @jdeligt

Did you call assemble_spades.pl directly or using our chloroExtractor pipeline?

I guess it is a Mac specific issue. I found the following link at stackexchange. The explain that /tmp/ is a symlink to /private/tmp/. In that case, it might be correct, that the relative path will be expanded to abolute paths by spades itself, eg. /private/tmp/.... If you are providing absolute paths, the expansion into absolute paths is not required and therefore the link is not resolved into its/private/tmp/` equivalent.

Nevertheless, I will try to find a Mac to verify my guess.

EDIT: Found one and it supported my guess :)