phnmnl / container-galaxy-k8s-runtime

PhenoMeNal runtime for Galaxy running inside a container orchestrator
Apache License 2.0
5 stars 18 forks source link

Bad definition of NmrML galaxy datatype #289

Closed ilveroluca closed 6 years ago

ilveroluca commented 6 years ago

Our Galaxy configuration has a broken definition of an nmrml data type resulting in the following error on start-up:

galaxy.datatypes.registry ERROR 2018-07-23 13:37:20,314 [p:58,w:0,m:0] [MainThread] Error importing datatype module galaxy.datatypes.proteomics
Traceback (most recent call last):
  File "lib/galaxy/datatypes/registry.py", line 225, in load_datatypes
    datatype_class = getattr(module, datatype_class_name)
AttributeError: 'module' object has no attribute 'NmrML'
djcomlab commented 6 years ago

That's weird - I was not aware that there was a nmrML datatype. Is this standard in Galaxy or a custom addition?

djcomlab commented 6 years ago

The problem is upstream in Galaxy. There is no corresponding datatype implementation for nmrML in our phnmnl/galaxy. I guess there should be something like the mzML one:

class MzML(ProteomicsXml):
    """mzML data"""
    edam_format = "format_3244"
    file_ext = "mzml"
    blurb = 'mzML Mass Spectrometry data'
    root = "(mzML|indexedmzML)"

https://github.com/phnmnl/galaxy/blob/ba6cbf8fbdccdc4667cb2fcccb6f06f29a0093b1/lib/galaxy/datatypes/proteomics.py#L129-L134

Whoever is responsible for the nmrML dataype should maybe add the implementation for it. Maybe DavidS @DSchober or someone else from IPB can take a look?

DSchober commented 6 years ago

I think these datatypes were created by Pablo Moreno, Reza and Daniel Jacob earlier this year at EBI ? I thought they made Galaxy aware of the new nmrML Datatype already.

korseby commented 6 years ago

@ilveroluca Can you help us? I remember that we run into some trouble with the galaxy datatype during testing and that it was either removed from the release or updated to general XML?

djcomlab commented 6 years ago

I have pushed a fix to https://github.com/phnmnl/galaxy/pull/39

djacob65 commented 6 years ago

Weird indeed ! I think this issue has to be solved at the Galaxy level.

ilveroluca commented 6 years ago

I found the datatype class was already in our external-datatypes directory:

https://github.com/phnmnl/container-galaxy-k8s-runtime/blob/release/v18.01-dalcotidine/external-datatypes/nmrml_datatype.py

This could be fixed by changing the value of the type attribute in the data type definition to something like type="galaxy.datatypes.nmrml_datatype:NmrML"

DSchober commented 6 years ago

The nmrML Edam ID is http://edamontology.org/format_3825 its in and visible under BioPortal. @ilveroluca , please add the line to the nmrML format specification:

edam_format = "format_3825"

ilveroluca commented 6 years ago

Fixed in #294