As noted in DataBiosphere/toil#5528, when a CWL workflow depends on an extension as a requirement, and --enable-ext is not provided, you get a message like this:
ERROR Tool definition failed validation:
mpich-mpirun-mpi-requirement.cwl:52:1: checking field 'requirements'
mpich-mpirun-mpi-requirement.cwl:54:3: checking item
Field 'class' contains undefined reference to
'http://commonwl.org/cwltool#MPIRequirement'
This is the same error message as if the requirement were somehow misspelled. It does not indicate that the workflow might become understandable to cwltool if --enable-ext were provided, or even that the problem is that an unknown extension is required by the workflow, a situation we anticipate (rather than the workflow being corrupted or malformed in an unexpected way). It also talks about a class field, which doesn't actually appear in the document, since I am using the format where requirements is a YAML dict and the requirement name is the key.
This error message should be improved so that, when the user runs a workflow that needs --enable-ext without that flag, the output text suggests trying it with --enable-ext.
It should also be improved to explain that the problem is that cwltool does not (as currently configured) support the blah extension, as used in file blah.cwl.
As noted in DataBiosphere/toil#5528, when a CWL workflow depends on an extension as a requirement, and
--enable-extis not provided, you get a message like this:This is the same error message as if the requirement were somehow misspelled. It does not indicate that the workflow might become understandable to cwltool if
--enable-extwere provided, or even that the problem is that an unknown extension is required by the workflow, a situation we anticipate (rather than the workflow being corrupted or malformed in an unexpected way). It also talks about aclassfield, which doesn't actually appear in the document, since I am using the format where requirements is a YAML dict and the requirement name is the key.This error message should be improved so that, when the user runs a workflow that needs
--enable-extwithout that flag, the output text suggests trying it with--enable-ext.It should also be improved to explain that the problem is that
cwltooldoes not (as currently configured) support theblahextension, as used in fileblah.cwl.