Skip to content

accept diff in bytes  #43

Closed
Closed

Description

@cool-RR

I have the contents of a diff file in a bytes object in Python 3. I tried feeding it to PatchSet but it complained:

    is_source_filename = RE_SOURCE_FILENAME.match(line)
builtins.TypeError: cannot use a string pattern on a bytes-like object

I had to decode it and now it works, but I'm concerned whether the decoding could fail sometimes if there is binary content. It'll be nice if unidiff would accept the diff in binary form instead of me having to decode.

Activity

  1. matiasb commented on May 20, 2017

    @matiasb
    Owner

    You don't usually have a unified diff for binary data, right? The unified diff format makes sense for text files, which could be encoded using different encodings, yes, but to parse it unidiff will need the decoded string (and the encoding is not something you can easily guess, that's why it is a param when parsing a diff file).
    Makes sense? In any case I agree I could take a look what happens when diffing binary data.

  2. added a commit that references this issue on Jul 18, 2026
  3. matiasb commented on Jul 18, 2026

    @matiasb
    Owner

    Related changes implemented by #137

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions