Add a utility function for returning encoded newlines for a type.

Review Request #11742 — Created July 23, 2021 and submitted

chipx86
DiffX
master
diffx

This introduces get_newline_for_type(), a utility function that takes
a LineEndings type value and returns newlines encoded as either ASCII
or the given encoding (with BOM stripped).

This logic was previously contained in DiffXReader, but is generally
useful, so it's being split out. That simplifies the DiffXReader code
as well, making some of the logic a lot more clear.

Unit tests pass on Python 2 and 3.

Summary
Add a utility function for returning encoded newlines for a type.
Description From Last Updated

What's the reason to not just do encoding='ascii' in the args list?

daviddavid
david
  1. 
      
  2. python/pydiffx/utils/text.py (Diff revision 1)
     
     
     

    What's the reason to not just do encoding='ascii' in the args list?

    1. Values get passed down directly into this from DiffXReader and, in a change I just posted, DiffXFileSection. Those values are legally allowed to be None, and should not be hard-coded to ascii (None for a diff means "no encoding is known or guaranteed"). To default this to ascii, the call sites would need to conditionally call this with/without the encoding parameter based on their own encoding value.

  3. 
      
david
  1. Ship It!
  2. 
      
chipx86
Review request changed

Status: Closed (submitted)

Change Summary:

Pushed to master (161143d)
Loading...