项目元数据
Python 包可以包含额外的元数据,以提供有关项目的更多信息。本文档概述了 PyPI 为显示项目元数据和其他详细信息而实施的具体行为。元数据字段的完整列表可在 Python 打包用户指南 中找到。
项目 URL
包所有者可以使用 [project.urls]
表 在包的 pyproject.toml
中指定与他们项目相关的各种 URL。
PyPI 在项目页面上呈现这些 URL,并将它们分成 已验证
和 未验证
子组。它们也可以通过 JSON API 获得。
已验证的详细信息
PyPI 目前支持多种验证项目 URL 的方法。当 URL 被验证时,PyPI 会使用绿色对勾 () 来突出显示它。
警告
URL 被验证只证明该 URL 在验证时受 PyPI 包所有者的控制,并不意味着该 URL 的任何其他安全性或与所讨论的项目的其他关系。
URL 验证发生在上传发布文件时,之后不会重复。这意味着验证的 URL 指向的网站可能会发生变化,而 URL 仍然会显示为已验证。已验证状态仅反映在 **文件上传时** 对 URL 的控制,而不是在任何之后的点。
以下小节指定了可以验证的不同类型的 URL。
自链接
PyPI 将指向 PyPI 上该项目的任何 URL 视为已验证。例如,pip
的项目页面会将以下所有内容标记为已验证
https://pypi.ac.cn/project/pip/
https://pypi.ac.cn/p/pip/
https://pypi.python.org/project/pip
https://pypi.python.org/p/pip
https://pythonlang.cn/pypi/pip
通过可信发布
可信发布 允许 PyPI 证明包的发布流程来自已验证的来源。
可以验证的 URL 取决于所使用的可信发布者
- GitHub Actions: 使用来自存储库的 GHA 上传的包将验证该存储库的 GitHub URL。例如,对于
pypa/pip
存储库,以下 URL 将被验证https://github.com/pypa/pip
https://github.com/pypa/pip/*
(所有子路径)https://github.com/pypa/pip.git
https://pypa.github.io/pip
https://pypa.github.io/pip/*
(所有子路径)
- GitLab CI/CD: 使用来自存储库的 GitLab CI/CD 上传的包将验证该存储库的 GitLab URL。例如,对于
pypa/pip
存储库,以下 URL 将被验证https://gitlab.com/pypa/pip
https://gitlab.com/pypa/pip/*
(所有子路径)https://gitlab.com/pypa/pip.git
- Google Cloud: 目前没有验证任何 Google 特定的 URL。
- ActiveState: 使用 ActiveState 上传的包将验证链接到 ActiveState 中项目的 URL
https://platform.activestate.com/pypa/pip
https://platform.activestate.com/pypa/pip/*
(所有子路径)
图标
虽然标签或 URL 可以是任意的,但 PyPI 会识别以下列表中的标签或 URL,并将默认图标从 更改为自定义图标。
通用 URL
要显示自定义图标,条目必须与其中一个模式匹配。识别模式不区分大小写。用星号 (*) 标记的项目表示前缀。这意味着以指定模式开头的任何名称都将被识别。
名称 | 图标 | 描述 | 别名 |
---|---|---|---|
主页 | 用于项目的首页 | ||
下载 | 下载链接 | ||
变更日志 | 变更日志信息 | 更改日志、更改、发布说明、新闻、新增内容、历史记录 | |
文档* | 项目文档 | Docs* ,指向 Read the Docs 域的 URL 或以 docs. 或 documentation. 开头的 URL |
|
Bug* | 错误/问题报告位置 | Issue*、Tracker*、Report* | |
资助* | 赞助信息 | Sponsor*、Donation*、Donate* |
托管平台
条目 URL 必须指向以下域才能显示自定义图标。自定义子域也会匹配。例如,如果列出了 domain.com
,则以 .domain.com
结尾的 URL 也会匹配。
服务 | 图标 | 域名 |
---|---|---|
Bitbucket | bitbucket.org |
|
GitHub | github.com 、github.io |
|
GitLab | gitlab.com |
|
google.com |
社交媒体平台
要显示自定义图标,条目必须
- 其名称与列出的不区分大小写的模式匹配
- 指向列出的域名的 URL (支持自定义子域)
平台 | 图标 | 名称 | 域名 |
---|---|---|---|
Discord | discord.com 、discordapp.com 、discord.gg |
||
Gitter | gitter.im |
||
Mastodon | Mastodon | ||
reddit.com |
|||
Slack | Slack* | slack.com |
|
Youtube | youtube.com 、youtu.be |
||
twitter.com 、x.com |
持续集成服务
要显示自定义图标 (),条目 URL 必须指向以下列出的服务提供商域名。支持自定义子域。
服务 | 域名 |
---|---|
AppVeyor | ci.appveyor.com |
CircleCI | circleci.com |
Codecov | codecov.io |
Coveralls | coveralls.io |
Travis CI | travis-ci.com 、travis-ci.org |
Python 生态系统
要显示自定义图标,条目 URL 必须指向以下列出的域名。
名称 | 图标 | 域名 |
---|---|---|
PyPI | cheeseshop.python.org 、pypi.io 、pypi.org 、pypi.python.org |
|
Python | python.org 、*.python.org |