parseFilename() has extra logic for the no "-" case. It would be nice, if you call the new parse functions from parseFilename() to avoid duplicated logic.