HomePhabricator

Render lint patches which have newlines in a less misleading way

Description

Render lint patches which have newlines in a less misleading way

Summary:
Ref T9846. This rewrites the rendering algorithm in a mostly-compatible way and fixes the major issue.

  • Includes test coverage for removing a newline, from T12765.
  • Includes test coverage for mangling an XML tag, from T9846.

This omits two features, which I'll port forward separately:

  • For one-line patches, highlighting the patched section.
  • For zero-line patches, putting a little caret ("^") under the character where the warning occurred.

I'll restore these features in a followup change.

Test Plan: Ran unit tests, linted a few things.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T9846

Differential Revision: https://secure.phabricator.com/D18510