victoriapascal / gutsmash

gutSMASH
GNU Affero General Public License v3.0
50 stars 15 forks source link

RuntimeError: unexpected output from muscle #4

Open Thiopeptide opened 2 years ago

Thiopeptide commented 2 years ago

Hello, when I am running gutsmash, I encountered this issue:

/home/eglassey/.local/lib/python3.7/site-packages/scss/selector.py:54: FutureWarning: Possible nested set at position 329 ''', re.VERBOSE | re.MULTILINE) Traceback (most recent call last): File "gutsmash/run_gutsmash.py", line 9, in entrypoint() File "/media/storage/ZZ/gutsmash/antismash/main.py", line 126, in entrypoint sys.exit(main(sys.argv[1:])) File "/media/storage/ZZ/gutsmash/antismash/main.py", line 115, in main antismash.run_antismash(sequence, options) File "/media/storage/ZZ/gutsmash/antismash/main.py", line 609, in run_antismash result = _run_antismash(sequence_file, options) File "/media/storage/ZZ/gutsmash/antismash/main.py", line 616, in _run_antismash _log_found_executables(options) File "/media/storage/ZZ/gutsmash/antismash/main.py", line 715, in _log_found_executables version = " ({})".format(version_getter()) # pylint: disable=not-callable File "/media/storage/ZZ/gutsmash/antismash/common/subprocessing/muscle.py", line 55, in run_muscle_version raise RuntimeError(msg % muscle) RuntimeError: unexpected output from muscle: /home/eglassey/miniconda3/bin/muscle, check path

My muscle version is: muscle 5.1.linux64

Can you please help me solve this issue?

Thank you

victoriapascal commented 2 years ago

Hi,

Sorry for this issue. I have developed gutSMASH using Muscle v3.8.1551. Could you try installing this version? I guess Muscle v5.1 output files are differently formatted and might not be compatible with gutSMASH. Let me know if this solves your problem!

Best,

EricDeveaud commented 1 year ago

problem is output of muscle -version changed over the different versions seeoutput ofvarious versions

MUSCLE v3.8.31 by Robert C. Edgar

MUSCLE v3.8.1551 by Robert C. Edgar

muscle 5.1.linux64 []

switch from uppercase vs lowercase was introduced in version 5.

and antismash/common/subprocessing/muscle.py get muscle version this way.

    muscle = get_config().executables.muscle
    command = [
        muscle,
        "-version",
    ]

    version_string = execute(command).stdout
    if not version_string.startswith("MUSCLE"):
        msg = "unexpected output from muscle: %s, check path"

changing the test this way if not version_string.startswith("MUSCLE".lower()): allows gutsmash to run with muscleeither version 3 or 5

tested with muscle/3.8.1551
muscle/5.1

regards Eric