You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've experienced a UnicodeDecodeError when adding unicode strings that contain multibye utf-8 characters into a shareable list.
My observation is that ShareableList chunks the list of strings before sending it over the process boundary, however this chunking process is not multibyte aware and will chunk in the middle of multibyte characters.
On the other end, this results in the ShareableList throwing a UnicodeDecodeError when it fails to decode not-a-full multibyte utf-8 character.
From running the attached MWE, I see that the string is sent in two chunks, the first being b'Boom \xf0\x9f\x92\xa5 \xf0\x9f\x92\xa5 \xf0' which clearly splits the 4 bytes of the 💥 character into the first byte and remaining 3 bytes.
Activity
huwcbjones commentedon May 18, 2021
I've experienced a UnicodeDecodeError when adding unicode strings that contain multibye utf-8 characters into a shareable list.
My observation is that ShareableList chunks the list of strings before sending it over the process boundary, however this chunking process is not multibyte aware and will chunk in the middle of multibyte characters.
On the other end, this results in the ShareableList throwing a UnicodeDecodeError when it fails to decode not-a-full multibyte utf-8 character.
From running the attached MWE, I see that the string is sent in two chunks, the first being b'Boom \xf0\x9f\x92\xa5 \xf0\x9f\x92\xa5 \xf0' which clearly splits the 4 bytes of the 💥 character into the first byte and remaining 3 bytes.
huwcbjones commentedon May 18, 2021
The workaround I am using is to manually encode/decode.
For the MWE, this means encoding on the creation side
and decoding before using the string
akulakov commentedon Dec 9, 2021
We classify 'crash' type as seg faults etc, so changing this to 'behavior' type.
akulakov commentedon Dec 9, 2021
I've confirmed this issue is still present in 3.11.
gh-88336: Fix UnicodeDecodeError with multibyte utf8 characters in Sh…
[3.14] gh-88336: Fix UnicodeDecodeError with multibyte utf8 character…
[3.15] gh-88336: Fix UnicodeDecodeError with multibyte utf8 character…