During the post_process method checks each elements property schema for "contentEncoding": "base64" if it is found the element's value is then encoded in base64 via b64encode. It takes in a bytes and returns a bytes the issue is most JSON libraries don't deal with bytes and convert them to string which contain a leading "b\' and trailing '/'"which have to be removed before decoding the string from base64. This can be avoided if you have the returnedbytesconverted to a string using.decode(). This would also stop the base64 encoded stings from being encoded in hex by_conform_primitive_property. Once this bug is fixed I will also need to change the correspondingb64decodecode in buzzcutnorman--target-mssql and buzzcutnorman--target-postgres since it won't need to runfromhex` on the value before decoding from base64.
During the
post_process
method checks each elements property schema for"contentEncoding": "base64"
if it is found the element's value is then encoded in base64 viab64encode
. It takes in abytes
and returns abytes
the issue is most JSON libraries don't deal withbytes
and convert them to string which contain a leading"b\'
and trailing '/'"which have to be removed before decoding the string from base64. This can be avoided if you have the returned
bytesconverted to a string using
.decode(). This would also stop the base64 encoded stings from being encoded in hex by
_conform_primitive_property. Once this bug is fixed I will also need to change the corresponding
b64decodecode in buzzcutnorman--target-mssql and buzzcutnorman--target-postgres since it won't need to run
fromhex` on the value before decoding from base64.Current Code
Proposed Code