Cannot round-trip UCS-2 with unpaired surrogates using UTF-16 and surrogateescape
Aberta
Ninguém assumiu esta issue ainda.
docs
topic-unicode
- Linguagem predominante
- Python
- Estrelas
- 77.2k
- Forks
- 36k
- Merge médio
- 1d 9h
- PRs com merge (30d)
- 558
Descrição
Bug report
The following Python code throws a UnicodeEncodeError:
b'\xdc\xff'.decode('UTF-16BE', 'surrogateescape').encode('UTF-16', 'surrogateescape')
I would expect that it would return b'\xdc\xff' instead.
Your environment
- CPython versions tested on: 3.10.4 from Fedora 35 repository
- Operating system and architecture: Fedora 35 on x86-64
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Comece executando o snippet de decodificação UTF-16BE e codificação UTF-16 reportado na versão especificada do CPython e, em seguida, rastreie o comportamento relevante de codificação e surrogateescape. Está concluído quando os bytes b'\xdc\xff' fazem round-trip sem um UnicodeEncodeError, com o comportamento verificado em relação à expectativa relatada.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- python
- Domínio
- internationalization
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Claramente especificada
- Facilidade para iniciantes
- 35/100