我刚刚发现 pypi Web UI 在编辑 egg 元数据时有一个“Bug tracker URL”字段。
该字段存在,所以我猜它在 setup.py 中受支持,但我无法使用谷歌找到任何关于此的内容。
所以问题是如何在我的 setup.py 中设置此字段,以便在 pypi 上进行 dist 发布时可以自动填充它。
该条目被调用bugtrack_url
,但它不是从 中提取的setup.py
。
从上下文和代码来看,我理解它的目的是仅在 PyPI 上通过网络使用,作为每个项目的元数据,而不是通常的每个发布信息。
该字段现在被视为旧字段(硬编码为),您可以通过Project-URL 列表None
添加此类信息,您可以通过以下条目进行设置:setuptools
project_urls
project_urls={
'Documentation': 'https://packaging.python.org/tutorials/distributing-packages/',
'Funding': 'https://donate.pypi.org',
'Say Thanks!': 'http://saythanks.io/to/example',
'Source': 'https://github.com/pypa/sampleproject/',
'Tracker': 'https://github.com/pypa/sampleproject/issues',
},
此选项最终setuptools
于 2017 年 11 月添加到38.3.0 版本中。
在 setup.py在 setup 中使用project_urls :
setup(
...
project_urls={
'Documentation': 'https://readthedocs.io/',
'Funding': 'https://donate.pypi.org',
'Say Thanks!': 'http://saythanks.io/to/example',
'Source': 'https://github.com/pypa/sampleproject/',
'Tracker': 'https://github.com/pypa/sampleproject/issues',
},
...
)
字典顺序被保留,但在 PyPi 上以相反的顺序列出:
bugtracker_url
遗留代码bugtrack_url:IIRC 它是 PyPI 维护者添加的东西来帮助项目,但同时 PEP 345 引入了 Project-URL,旨在涵盖源代码存储库、错误跟踪器、邮件列表等。如果 PEP 426 或其伴侣之一保留Project-URL(并且可能使用为常见站点定义的标签来改进它,例如“存储库”),那么这种特殊情况就变得多余了。
和
目前,看起来这在他们的 API 中被硬编码为 None 。我猜他们在迁移时离开了这个领域是为了向后兼容......