• Sean McGivern's avatar
    Allow resolving conflicts with non-ASCII chars · 96c77bf7
    Sean McGivern authored
    We wanted to check that the text could be encoded as JSON, because
    conflict resolutions are passed back and forth in that format, so the
    file itself must be UTF-8. However, all strings from the repository come
    back without an encoding from Rugged, making them ASCII_8BIT.
    
    We force to UTF-8, and reject if it's invalid. This still leaves the
    problem of a file that 'looks like' UTF-8 (contains valid UTF-8 byte
    sequences), but isn't. However:
    
    1. If the conflicts contain the problem bytes, the user will see that
       the file isn't displayed correctly.
    2. If the problem bytes are outside of the conflict area, then we will
       write back the same bytes when we resolve the conflicts, even though
       we though the encoding was UTF-8.
    96c77bf7
parser.rb 1.97 KB