I didn't think this would have any effect on the tests, but it does
because the catching in scmutil.callcatch() still happens. That's
because dispatch passes in the function that includes the parsing as
an argument to that function.
I initially used ConfigError here but Matt Harbison convinced me to
use InputError. I think that makes sense since error is not in a
config file.