Guu*_*uuk 5 python setuptools pypi python-packaging pyproject.toml
我目前用来setuptools构建我的 Python 包,并且我已经在我的pyproject.toml文件中以这种方式声明了两位作者:
authors = [
{name = "X Y", email = "x.y@tt.net"},
{name = "Z H", email = "z.h@tt.net"},
]
Run Code Online (Sandbox Code Playgroud)
一切正常,我可以在 PyPI 上发布它,但只发布第一作者。我怎样才能显示两位作者。
我尝试使用以下语法
authors = ["X Y <x.y@tt.net>, Z H <z.h@tt.net>"]
Run Code Online (Sandbox Code Playgroud)
但我有以下错误
ValueError: invalid pyproject.toml config: `project.authors[{data__authors_x}]`.
configuration error: `project.authors[{data__authors_x}]` must be object
Run Code Online (Sandbox Code Playgroud)
请注意,我指定:
[build-system]
requires = ["setuptools","numpy","scipy","wheel"]
build-backend = "setuptools.build_meta"
Run Code Online (Sandbox Code Playgroud)
您的原始符号是正确的:
authors = [
{name = "X Y", email = "x.y@tt.net"},
{name = "Z H", email = "z.h@tt.net"},
]
Run Code Online (Sandbox Code Playgroud)
但有些问题是您无法控制的。
一方面,尚不完全清楚如何将其转换为核心元数据符号,这是分发工件(轮)内使用的符号,然后由PyPI提取并显示。
另一方面,构建后端(setuptools包括在内)并没有明确说明它们如何从pyproject.toml符号转换为核心元数据符号,并且它们倾向于默默地选择列表的第一项并忽略后面的项目。
参考:
| 归档时间: |
|
| 查看次数: |
1405 次 |
| 最近记录: |