4

有兩個版本,我的小工具:如何確保README.rst有效?

在最近更新的README.rst情況變化的警告:

[email protected]> rst2html.py README.rst > /tmp/foo.html 
README.rst:18: (WARNING/2) Inline emphasis start-string without end-string. 
README.rst:18: (WARNING/2) Inline emphasis start-string without end-string. 

現在的PyPI的頁面看起來醜陋:-(

我用這個食譜做CI,bumpversion,上傳到PyPI中:https://github.com/guettli/github-travis-bumpversion-pypi

我怎麼能保證不破README.rst得到釋放更多的與其他詞我想避免的是,頁面的PyPI長相醜陋

親愛的細節愛好者:請不要看README.rst中當前的特定錯誤。這不是問題:-)

回答

7

從官方Python打包文檔,Uploading your Project to PyPI

提示: PyPI上使用的新結構化解析器獅身人面像!此外,爲確保所有用戶的安全,某些類型的URL和指令被禁止或刪除(例如.. raw::指令)。 之前試圖上傳你的發行版,你應該檢查你的簡短/長描述setup.py提供的是有效的。您可以按照pypa/readme_renderer工具的說明操作。

,並從該工具的README.rst:

要檢查長說明使用本地所只需安裝readme_renderer庫:

$ pip install readme_renderer 
$ python setup.py check -r -s 
+0

大。你是對的。如果REAME有效或無效,readme_renderer將擁有權威答案。謝謝! – guettli

+0

現在我有工具來做到這一點。我的下一步是如何稱呼它。到目前爲止,我看到兩種方式:使用子進程或像庫一樣使用它。也許有第三種方法。我不確定哪種更好。 – guettli

+0

@guettli你問另外一個問題嗎?如果是這樣,請創建一個。否則,如果它確實解決了您的問題,請接受此答案。 –

1

如果rstcheck捕獲自述文件中的錯誤類型,則可以嘗試。如果是這樣,請在腳本部分的pytest之後運行它。 (並將其添加到您的要求中)。