solver: parse cabal errors also on Windows#2508
Merged
Blaisorblade merged 1 commit intomasterfrom Aug 18, 2016
Merged
Conversation
As shown in #2502, `cabal init --solver` can fail with `Could not parse cabal-install errors` on Windows. The problem boils down to the fact that we test `isSuffixOf "suffix" "stuff suffix\r"`, which is false, so we should better strip `\r` before calling `isSuffixOf`. I've verified that `\r` is actually there only indirectly; I inferred it from the presence of `stripCR` and the parse failure, and I've recently seen the behavior of lines on strings with Windows line ends. Testing confirms this PR fixes the bug—the original procedure fails with the parent commit and works with this one.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
As shown in #2502,
cabal init --solvercan fail withCould not parse cabal-install errorson Windows. The problem boils down to the fact thatwe test
isSuffixOf "suffix" "stuff suffix\r", which is false, so weshould better strip
\rbefore callingisSuffixOf.I've verified that
\ris actually there only indirectly; I inferred itfrom the presence of
stripCRand the parse failure, and I've recentlyseen the behavior of lines on strings with Windows line ends.
Testing confirms this PR fixes the bug—the original procedure fails with
the parent commit and works with this one.
Fixes #2502.