URL: https://github.com/freeipa/freeipa/pull/1049 Author: stlaz Title: #1049: ldif: handle attribute names as strings Action: opened
PR body: """ ldif.LDIFRecordList handles all attribute names as utf-8 strings and all attribute values as bytes. If we take the attribute value and try to search for it in the entry (= dictionary), if it contains the attribute name as a key (which is a string), their hashes match. However, even if hashes match, Python needs to make sure those two are the same in case of a hash collision, so it tries to compare them. This causes BytesWarning exception when running in strict mode because `bytes` and `str` instances cannot be compared. KeyError would be thrown in a non-strict mode.
Also, when later passing the attr to replace_value(), we need for it to be `str` otherwise the modifications handler fails because it tries to sort the attributes it's modifying but that's a bit less poetic issue than the first one.
https://pagure.io/freeipa/issue/7129 """
To pull the PR as Git branch: git remote add ghfreeipa https://github.com/freeipa/freeipa git fetch ghfreeipa pull/1049/head:pr1049 git checkout pr1049
URL: https://github.com/freeipa/freeipa/pull/1049 Author: stlaz Title: #1049: ldif: handle attribute names as strings Action: closed
To pull the PR as Git branch: git remote add ghfreeipa https://github.com/freeipa/freeipa git fetch ghfreeipa pull/1049/head:pr1049 git checkout pr1049
freeipa-devel@lists.fedorahosted.org