为什么我有 Description-Content-Type: UNKNOWN
Why do I have Description-Content-Type: UNKNOWN
我最近在 .egg-info/PKG-INFO
中发现了一个新的元数据:Description-Content-Type
。
当我运行:
python setup.py egg_info
我得到:
Description-Content-Type: UNKNOWN
例如,我怎么知道我使用的是 Markdown (text/markdown
)?
在 setuptools v36.4 (on Sept 2017). It is available in the Core Metadata v2.1 中引入了元数据字段 Description-Content-Type
。
您可以在 setup.py
中使用此元数据来指定包的内容类型 Description。
经典用法是在long_description
中填上你项目的README文件。
然后,您可以使用 long_description_content_type
参数来设置内容类型。
项目的详细描述显示在 PyPi(Python 包索引)中。
您可以阅读 PyPA 文章:“Including your README in your package’s metadata”。
这是一个例子:
import io
from setuptools import setup
def read(filename):
with io.open(filename, mode="r", encoding='utf-8') as fd:
return fd.read()
setup(
name="YourProject",
version='1.2.3',
description="One line description of your project",
long_description=read("README.rst"),
long_description_content_type='text/x-rst',
...
)
您可以选择以下内容类型之一:
"text/plain"
:对于简单文本(例如:"README"或"README.txt"),
"text/x-rst"
:对于reStructuredText(例如:"README.rst"),或者
"text/markdown"
:用于 Markdown(例如:"README.md")。
注意: Markdown 的支持是最近的(你需要 setuptools >= 38.6)。
此外,您可以使用 twine 检查包的详细描述(一旦构建了可分发包)。例如:
twine check dist/*
我最近在 .egg-info/PKG-INFO
中发现了一个新的元数据:Description-Content-Type
。
当我运行:
python setup.py egg_info
我得到:
Description-Content-Type: UNKNOWN
例如,我怎么知道我使用的是 Markdown (text/markdown
)?
在 setuptools v36.4 (on Sept 2017). It is available in the Core Metadata v2.1 中引入了元数据字段 Description-Content-Type
。
您可以在 setup.py
中使用此元数据来指定包的内容类型 Description。
经典用法是在long_description
中填上你项目的README文件。
然后,您可以使用 long_description_content_type
参数来设置内容类型。
项目的详细描述显示在 PyPi(Python 包索引)中。 您可以阅读 PyPA 文章:“Including your README in your package’s metadata”。
这是一个例子:
import io
from setuptools import setup
def read(filename):
with io.open(filename, mode="r", encoding='utf-8') as fd:
return fd.read()
setup(
name="YourProject",
version='1.2.3',
description="One line description of your project",
long_description=read("README.rst"),
long_description_content_type='text/x-rst',
...
)
您可以选择以下内容类型之一:
"text/plain"
:对于简单文本(例如:"README"或"README.txt"),"text/x-rst"
:对于reStructuredText(例如:"README.rst"),或者"text/markdown"
:用于 Markdown(例如:"README.md")。
注意: Markdown 的支持是最近的(你需要 setuptools >= 38.6)。
此外,您可以使用 twine 检查包的详细描述(一旦构建了可分发包)。例如:
twine check dist/*