Fixing parsing of diffs with empty neutral lines and diffs without co… #32
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.
…ntext.
Here, I tried to improve parsing of diffs:
-which have an empty neutral line. This sends the parser into a search which should determine if the line is a separator between diffs or a neutral line, and the parser often incorrectly decides it is a separator, which then leads to missing parts of the diff in the parsed data. The search is now improved so that if a new hunk or a from line or to line are found, then the empty line is interpreted as a neutral line. Empty neutral lines at the end of a file diff may still be ignored/considered separators, but that seems like a much smaller problems
-which don't have context - the end of diff detection failed to detect the start of the next diff; fixed by separating matchesEndPattern from the header detection, and properly handling the header immediately following a diff line.