Enable to pass an object to createBlob by dudaerich · Pull Request #464 · github-tools/github
createBlob automatically encodes string parameter
by Utf8 library. In some cases the string value
can be already encoded in Utf8 so the encoding
should be skipped.
This commit enables to pass object containing
the content and encoding items. This object is
directly sent to Github. Users have better control
about what is actually sending.
closes #463
This definitely seems like an important issue. @dudaerich Would you be able to write a test that demonstrates the issue you've run into?
createBlob automatically encodes string parameter by Utf8 library. In some cases the string value can be already encoded in Utf8 so the encoding should be skipped. This commit enables to pass object containing the content and encoding items. This object is directly sent to Github. Users have better control about what is actually sending. closes github-tools#463
Done. I updated the test to use the object type. Otherwise it would still fail.
To be honest, I am not very convinced that my fix is right. Its advantage is that is backward compatible. On the other hand it is quite unexpected that this test fails. IMO the library shouldn't encode strings to UTF-8. On most platforms UTF-8 is default encoding so it doesn't make sense to encode already encoded strings. If someone uses more exotic encoding, they can encode it to UTF-8 before they pass it to the library. Wdyt?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters