Code Monkey home page Code Monkey logo

Comments (4)

serine avatar serine commented on August 23, 2024 3

I understand that those are two different file. I miss-typed and forgot to add filenames. What I was trying to say that those two files have essentially identical name, which they do.

I'm not sure if you've used lmod before https://github.com/TACC/Lmod, but this is fairly common system on alot of the servers and clusters. The two big advantages of using such system:

  1. Ability to choose different versions of the same tool
  2. your PATH variable doesn't get populated with every possible tools that had been installed on the system

To be absolutely clear I'm talking about linux OS, in particular I administer ubuntu 14.04 and ubuntu 16.04. I know others using CentOS.

Here is a module wrapper for spades on our system

help(                                                                                                                                                                                                               
[[                                                                                                                                                                                                                  
This module loads spades genome assembler                                                                                                                                                                           
]]) 
                                                                                                                                                                                                                 
local base = pathJoin("/mnt/software/apps", "spades-3.10.0-Linux")                                                                                                                                                  
local path = pathJoin(base, "bin")                                                                                                                                                                                
prepend_path("PATH", path)                                                                                                                                                                                        

LmodMessage("Use spades.py instead of spades")  

What this does is to append sapdes/bin into system PATH variable so that spades.py becomes available in users environment. This is the same for example as putting this into ~/.bashrc

export PATH=/mnt/software/apps/spades-3.10.1-Linux/bin:$PATH

except its better.

Either way sapdes and spades.py become available in user's environment. And user have to choose which spades to run. Do you at lest see that being a little bit of a problem? This is what I was trying to say in my previous message. Not to change content of the file, rather allow users export bin/ directory and only be presented with one choice of sapdes

On our system I put out a message very time user loads spades e.g

LmodMessage("Use spades.py instead of spades")  

But this seem silly, don't you think?

It is up to you of course whether you want to still think about changing names or other work-arounds or not. I'll leave it with you, but you can't deny that both spades and sapdes.py are found in the bin directory and from user's point of view this is confusing, particular when majority of other bioinformaticky tools are run without a suffix e.g cutadapt, mimodd, and multiqc are all python based tool.

Thanks

from spades.

niemasd avatar niemasd commented on August 23, 2024 1

I'm a bit late here, but I agree that it is confusing to include an executable file called spades and one called spades.py in the same folder. Namely, I installed to /usr/local so SPAdes would be in my PATH, and both spades and spades.py result in my PATH (even though I should only run spades.py, not spades). I think this adds unnecessary confusion

from spades.

asl avatar asl commented on August 23, 2024

Hello

Thank you for your interest in SPAdes.

It's a bit confusing to have essentially indential files in the bin/ directory and both have executable permissions on them

They are not. In particular, spades.py is a glue script that includes a lot of pipeline logic and spades is one of the apps of the suite.

The main problem for us is that we use lmod enviromental modules system on our servers and when I module load spades I

This smells like a problem os this system.

Please let me know if you have any temproral fixe for this problem and your long term thought

There are no plans to "fix" this.

from spades.

asl avatar asl commented on August 23, 2024

The binaries now have spades- prefix in the name. SPAdes 3.12 is released.

from spades.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.