我想在简短描述的另一行中包含import
语句。
setup(
name='my-module',
packages=find_packages(),
license='MIT',
description='A useful module. nfrom my_module import MyModule',
long_description=README,
long_description_content_type='text/markdown',
)
但是,一旦我在描述中包含n
字符,在运行twine check dist/*
时,我在长描述中会出现以下错误:
Checking distmymodule-1.0-py3-none-any.whl: FAILED
`long_description` has syntax errors in markup and would not be rendered on PyPI.
line 7: Error: Unexpected indentation.
warning: `long_description_content_type` missing. defaulting to `text/x-rst`.
Checking distmymodule-1.0.tar.gz: FAILED
`long_description` has syntax errors in markup and would not be rendered on PyPI.
line 7: Error: Unexpected indentation.
warning: `long_description_content_type` missing. defaulting to `text/x-rst`.
显然,setup.py中的换行符没有被正确解析——是不是通常不可能在描述中使用换行符,还是我必须以不同的方式使用它?
python setuptools文档指定description
字段必须是一个"短字符串";。这听起来可能像通用英语,但它具有语义意义,正如稍后描述的那样——
"排序字符串">
一行文字,不超过200个字符。
问题就在这里。字符串必须是单行(无换行符(,并且最多只能包含200个字符。
(短(description=
中不能有换行符。
这很令人惊讶,至少是检查器的行为,但这是一个已知的问题,截至2020年11月,正在解决