ReStructuredText: README.rst не обрабатывает PyPI

У меня есть проект Python, который размещен как на Github, так и на PyPI.

В Github: https://github.com/sloria/TextBlob/blob/master/README.rst

В PyPi: https://pypi.python.org/pypi/textblob

Мой README.rst, похоже, не корректно форматирует PyPI, но он отлично смотрится на Github.

Я уже прочитал этот, но у меня нет ссылок на странице, так что не проблема.

Ответ 1

Вы используете новую текстовую роль, :code:.

PyPI, по-видимому, поддерживает только docutils 0.8, а code и code-block добавлен в парсер PyPI напрямую, что означает, что :code: не поддерживается.

GitHub использует более новую версию docutils (0,9 или 0,10).

Удалить :code: в целом:

:code:`sentiment`

с:

`sentiment`

и др.

Ответ 2

Для пакета который я недавно загрузил, проблема была относительной ссылкой (а не ссылкой на странице) в README.rst на наш которые отлично смотрятся на GitHub, но отправляют рендеринг на PyPI.

Чтобы исправить это, я временно превратил ссылку в абсолютную ссылку, называемую

python setup.py register

чтобы обновить метаданные и отменить изменение без его фиксации.

Ответ 3

У меня была такая же проблема при загрузке моего модуля python в pypi.

Позже я проверил README.rst для ошибок, используя rst-lint, который показал, что мой файл readme прав. Вы также можете использовать пакет restructuredtext_link для python, чтобы проверить первый файл на наличие ошибок или предупреждений.

Я обнаружил, что проблема не в файле README, а в setup.py.

Следуйте приведенным ниже пунктам при написании Readme и setup.py

  • НЕ пишите строки python MULTI LINE для описания или резюме или чего-либо, что входит в аргументы setup().
  • Не используйте относительные ссылки в файле README (например./path1/path2).
  • Убедитесь, что первый синтаксис подходит, используя инструмент проверки, например rst-lint.
  • Если у вас есть файл с разметкой, вы можете легко преобразовать его в реструктурированный текст с помощью pandoc.

Убедитесь, что вы помните об этом при написании README.