This change makes it so that rather than using an empty string to indicate "no optParserDDL value", we use Nothing. This forces the uses of optParserDDL to deal better with the case where the argument is missing; previously, an invalid command like 'daedalus run' would emit this error:
Missing module ``
Searched paths:
* ./
That error obscures the basic problem, which is that the implementation expected a DDL file argument after 'run'. This change makes it so that when the filename is missing, a GetOptException is raised instead, which ought to be consistent with a few other places where late-stage input errors are handled in a similar way.
This change makes it so that rather than using an empty string to indicate "no optParserDDL value", we use Nothing. This forces the uses of optParserDDL to deal better with the case where the argument is missing; previously, an invalid command like 'daedalus run' would emit this error:
That error obscures the basic problem, which is that the implementation expected a DDL file argument after 'run'. This change makes it so that when the filename is missing, a GetOptException is raised instead, which ought to be consistent with a few other places where late-stage input errors are handled in a similar way.