Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 6, 2011 09:46:13

Cykooz
От:
Зарегистрирован: 2010-10-07
Сообщения: 46
Репутация: +  0  -
Профиль   Отправить e-mail  

Distutils + Docutils = UnicodeDecodeError

Может кто знает решение такой проблемы.
Пытаюсь собрать дистриб питоновского пакета и выгрузить его в PyPi (свой, приватный). Для начала делаю такую команду:

python setup.py register -r mypypi

Получаю ошибку UnicodeDecodeError в модуле docutils.
Покопавшись в исходниках понял, что проблема в том что distutils с помощью модуля docutils проверяет валидность текста описания пакета с разметкой RestructuredText. При этом distutils конвертит это описание либо в utf8-строку (если она исходно была в unicode) либо в ascii-строку. Docutils в свою очередь ожидает либо ascii либо unicode - тут и возникает ошибка, т.к. в описании пакета содержатся кириллица, а docutils не понимает utf8-строки.
Помнится раньше у меня такой проблемы не было, но в те времена, если не ошибаюсь, я использовал Python 2.6 и возможно другую версию docutils. Сейчас у меня Python 2.7.1 и docutils 0.8.1

PS: Описание пакета я считываю из файла README.txt и перевожу в unicode.



Отредактировано (Окт. 6, 2011 09:46:58)

Офлайн

#2 Окт. 7, 2011 02:01:28

Cykooz
От:
Зарегистрирован: 2010-10-07
Сообщения: 46
Репутация: +  0  -
Профиль   Отправить e-mail  

Distutils + Docutils = UnicodeDecodeError

В общем это косяк в Distutils. Я отправил сообщение в баг-трекер питона. Его приняли и возможно в будущих версиях уже поправят, а пока что придётся пропатчить свой Distutils ручками.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version