-
novadenizen authored
When 'read' is used on invalid input, it raises a "no parse" exception that is typically very unhelpful to the user. It is generally more desirable to either handle the error or produce a more helpful error message. This actually happens sometimes. When a user creates a detailed-0.9 test suite, and that test suite crashes or is killed so it can't write its result log, the bare read in Distribution.Simple.Test.LibV09.runTest fails and cabal fails with "no parse". I could have just written a patch to fix that, but it seemed like a better idea to find all uses of bare read and see what we can do for all of them. I have grepped through the repository and I think I've found all uses of bare 'read' that might raise the dreaded 'no parse' exception. The plan is to separately patch each of them by either replacing with an alternate Read function (readMaybe is the most obvious candidate), proving the read will always succeed, or establishing that producing a 'no parse' exception is the most desirable behavior.
978ca74e