未验证 提交 c243244a 编写于 作者: S Simon Leiner 提交者: GitHub

fix: Crashes when executing pdm show for an sdist (#1277)

This fixes #1276.
上级 600812b0
Do not crash when calling `pdm show` for a package that is only available as source distribution.
......@@ -23,10 +23,17 @@ class ProjectInfo:
metadata = cast(Message, data.metadata)
keywords = metadata.get("Keywords", "").replace(",", ", ")
platform = metadata.get("Platform", "").replace(",", ", ")
project_urls = {
k.strip(): v.strip()
for k, v in (row.split(",") for row in metadata.get_all("Project-URL", []))
}
if "Project-URL" in metadata:
project_urls = {
k.strip(): v.strip()
for k, v in (
row.split(",") for row in metadata.get_all("Project-URL", [])
)
}
else:
project_urls = {}
return {
"name": metadata["Name"],
"version": metadata["Version"],
......
......@@ -121,6 +121,10 @@ def test_show_package_on_pypi(invoke):
assert result.exit_code == 0
assert "requests" in result.output.splitlines()[0]
result = invoke(["show", "--name", "sphinx-data-viewer"])
assert result.exit_code == 0
assert "sphinx-data-viewer" in result.output.splitlines()[0]
def test_show_self_package(project, invoke):
result = invoke(["show"], obj=project)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册