OpenMS icon indicating copy to clipboard operation
OpenMS copied to clipboard

SiriusAdapter fails in OpenMS 3.0

Open bernt-matthias opened this issue 2 years ago • 11 comments

When executing the test TOPP_SiriusAdapter_1 (and many others using sirius) in a conda environment I get the following:

stderr:
    Error: Unexpected internal error (Sirius was executed, but an empty output was generated)
stdout:
Progress of 'loading spectra list':
-- done [took 0.00 s (CPU), 0.00 s (Wall)] -- 
Progress of 'loading chromatogram list':
-- done [took 0.00 s (CPU), 0.00 s (Wall)] -- 
Number of MS2 spectra to be processed: 10
No MS1 spectrum for this precursor. Occurred 0 times.
0 spectra were skipped due to precursor charge below -1 and above +1.
Mono charge assumed and set to charge 1 with respect to current polarity 10 times.
0 features were skipped due to feature charge below -1 and above +1.
No Sirius user account login information specified!
Executing command: /home/berntm/miniconda3/envs/OpenMS3.0-env/share/sirius-csifingerid-4.9.15-3/bin/sirius --noCite --input /tmp/20230808_153607_MOLSYB009_560140_2.ms --project /tmp/20230808_153607_MOLSYB009_560140_1/sirius_out --no-compression sirius --db=all --profile=qtof --candidates=5 write-summaries
Standard output and error of SIRIUS were:

Aug 08, 2023 3:36:08 PM org.apache.commons.beanutils.FluentPropertyBeanIntrospector introspect
INFO: Error when creating PropertyDescriptor for public final void org.apache.commons.configuration2.AbstractConfiguration.setProperty(java.lang.String,java.lang.Object)! Ignoring this property.
INFO    15:36:09 - Sirius Workspace Successfull initialized at: /home/berntm/.sirius-4.9
INFO    15:36:09 - You run SIRIUS 4.9.15
INFO    15:36:09 - Sirius was compiled with the following ILP solvers: GLPK-v1.7.0 (included), Gurobi-v9.1.1, CPLEX-v12.7.1, COIN-OR-v1.17.3
INFO    15:36:09 - Treebuilder priorities loaded from 'sirius.properties' are: [GUROBI, CPLEX, CLP, GLPK]
INFO    15:36:09 - CPU check done. 2 cores that handle 4 threads were found.
INFO    15:36:09 - Bug reporter initialized.
INFO    15:36:09 - Web API initialized.
INFO    15:36:09 - Running with following arguments: [--noCite, --input, /tmp/20230808_153607_MOLSYB009_560140_2.ms, --project, /tmp/20230808_153607_MOLSYB009_560140_1/sirius_out, --no-compression, sirius, --db=all, --profile=qtof, --candidates=5, write-summaries]
INFO    15:36:09 - Job manager successful initialized with 2 CPU thread(s) and 2 IO thread(s).
FINE    15:36:09 - <0>[InputExpanderJJob] Running post processing
FINE    15:36:09 - <0>[InputExpanderJJob] Running cleanup
INFO    15:36:09 - <1>[InputExpanderJJob] Expanding Input Files: '/tmp/20230808_153607_MOLSYB009_560140_2.ms'...
INFO    15:36:09 - <1>[InputExpanderJJob] ...Input Files successfully expanded!
FINE    15:36:09 - <1>[InputExpanderJJob] Running post processing
FINE    15:36:09 - <1>[InputExpanderJJob] Running cleanup
Unmatched argument at index 10: 'write-summaries'
Did you mean: fingerid?

Sirius outputs the following version information:

SIRIUS 4.9.15
SIRIUS lib: 4.6.1
CSI:FingerID lib: 1.6.0

bernt-matthias avatar Aug 08 '23 13:08 bernt-matthias

Hi! I think we require Sirius 5 for 3.0. @axelwalter Correct me if I'm wrong. It might be on conda-forge but we never tested this.

jpfeuffer avatar Aug 08 '23 14:08 jpfeuffer

I can test this.

Then we would need to update: the bioconda recipe https://github.com/bioconda/bioconda-recipes/blob/43d61b297225d528107baaeba9a79908e2850f6f/recipes/openms-meta/meta.yaml#L151C33-L151C33 to use https://anaconda.org/conda-forge/sirius-ms .. would it be version 5.*

bernt-matthias avatar Aug 08 '23 14:08 bernt-matthias

Yes, we need Sirius 5 for 3.0.

axelwalter avatar Aug 08 '23 14:08 axelwalter

Let's try! But you will need a username and password. It's the new Sirius policy.

jpfeuffer avatar Aug 08 '23 16:08 jpfeuffer

But you will need a username and password. It's the new Sirius policy.

Meh. As if life isn't complicated enough :)

How does this work in OpenMS? Is there a parameter to specify username and password or a config file?

bernt-matthias avatar Aug 08 '23 20:08 bernt-matthias

Haha you are not alone! Yes, two parameters. I don't remember the exact names right now.

jpfeuffer avatar Aug 08 '23 20:08 jpfeuffer

Found them. Are you running this in your tests? If so are there are credentials that can be used for testing?

bernt-matthias avatar Aug 09 '23 09:08 bernt-matthias

@timosachsenberg this is the issue I mean. What do you think, should we use our login for the galaxy tests? @axelwalter should have them. They are probably also stored on our CI credentials

jpfeuffer avatar Aug 18 '23 08:08 jpfeuffer

Seems that tests for Sirius are disabled also here https://github.com/OpenMS/OpenMS/pull/7140. In the test sources (src/tests/topp/) I also can't see that a username / mail is set.

At least for the current release of the Galaxy tools I guess I will have to disable tests for all tools using Sirius.

bernt-matthias avatar Oct 25 '23 11:10 bernt-matthias

Yes unfortunately we will have to drop support for Sirius due to test instability until we find someone who cares about it enough and has enough time to fix tests for every new Sirius release and API change. This includes AssayGenMetabo which is based on Sirius.

M Bernt @.***> schrieb am Mi., 25. Okt. 2023, 13:41:

Seems that tests for Sirius are disabled also here #7140 https://github.com/OpenMS/OpenMS/pull/7140. In the test sources (src/tests/topp/) I also can't see that a username / mail is set.

At least for the current release of the Galaxy tools I guess I will have to disable tests for all tools using Sirius.

— Reply to this email directly, view it on GitHub https://github.com/OpenMS/OpenMS/issues/7000#issuecomment-1779080025, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB52F3VXAYQNCN4FILDTXKDYBD3F7AVCNFSM6AAAAAA3IQUV2CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZZGA4DAMBSGU . You are receiving this because you commented.Message ID: @.***>

jpfeuffer avatar Oct 25 '23 12:10 jpfeuffer

Yes unfortunately we will have to drop support for Sirius due to test instability

Which also mean that sirius has problems in terms of reproducibility?

I support that decision in the light of https://publiccode.eu/en/ .. all data and code should be available freely anyway.

bernt-matthias avatar Oct 25 '23 13:10 bernt-matthias