PyPI 終於支持 Markdown 了

TLNR:一言以蔽之,就是 pip 包的 README 終於用 Markdown 寫 了。

Finally! PyPI 終於支持 Markdown 格式的項目描述了。這是一個很常見的需求,經過大量工作(包括創建 PEP 566)現在終於實現了,再也無需將 Markdown 轉換為 rST 了。

以下是發布使用 Markdown 項目描述的項目所需的步驟。

1. 有一個 README.md 文件

其擴展名不一定是 .md(.mkdn 或 .markdown 或其他任何東西都可以),只要確保你將其設置為 long_description。

2.setup.py 中添加一個新參數

PEP 566 添加的新的元數據欄位中有一個 Description-Content-Type,要為的 long_description 設置內容類型,需要將以下參數添加到項目的 setup.py 中的 setup() 調用中:

long_description=long_description,+ long_description_content_type="text/markdown",

3.更新 setuptools

需要 setuptools>= 38.6.0 才能使用新的元數據生成發布包。

$ pip install -U setuptools

你也必須實際使用 setuptools(譯者注,這意味著不能使用 distutils),這意味著在 setup.py 中有一個類似的導入:

from setuptools import setup

4.生成源碼分發包

這個不變

$ python setup.py sdist

5. 升級 twine

必須用 twine 上傳分發包,並且只有 twine> = 1.11.0 才能將元數據正確發送到 PyPI。

$ pip install -U twine

6. 上傳分發包

這個也不變

$ twine upload dist/*

7. 在pypi.org上查看項目

只有 pypi.org 才能正確渲染新的 Markdown 描述。

而 Legacy PyPI (pypi.python.org/) 仍然會將描述渲染為純文本,但不用擔心,它很快就會棄用。 ??

原文:Markdown Descriptions on PyPI

擴展閱讀:

  • 一個好的 README 的些許建議
  • Python:range 對象並不是迭代器
  • Python 家族有多龐大

極光日報,極光開發者旗下媒體。

每天導讀三篇英文技術文章。

推薦閱讀:

如何將自己的程序發布到 PyPI
Install a package from Github that has other github dependencies

TAG:pypi | Python | Markdown |