pyyaml icon indicating copy to clipboard operation
pyyaml copied to clipboard

`CDumper` and `Dumper` generate inconsistent output

Open jiasli opened this issue 4 years ago • 1 comments

CDumper and Dumper generate different output for the same input object:

import yaml
from yaml import CDumper, Dumper

string = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nyyyyyyyyyyyyyyyyyyyyy'

print(yaml.dump(string, Dumper=CDumper))
print(yaml.dump(string, Dumper=Dumper))

string = '"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"\r\nyyyyyyyyyyyyyyyyyyyyy'

print(yaml.dump(string, Dumper=CDumper))
print(yaml.dump(string, Dumper=Dumper))

Output:

"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nyyyyyyyyyyyyyyyyyyyyy"

"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\
  \nyyyyyyyyyyyyyyyyyyyyy"

"\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\r\nyyyyyyyyyyyyyyyyyyyyy"

"\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\
  \r\nyyyyyyyyyyyyyyyyyyyyy"

This makes diff-ing difficult if the same object is dumped with different dumper.

jiasli avatar Nov 29 '21 12:11 jiasli