Fix links in PyPI Simple Repository API page (#30594)
Thanks to @Zottelchen for looking into problem and proposing the fix. Ref: https://github.com/astral-sh/uv/issues/3017 , https://peps.python.org/pep-0503/ This PR's change is from Zottelchen's work. And I by the way rename the `$p` to `$pd` because `p` is used as "package" in code, while `pd` is used as "package description". ---- Co-authored-by: Zottelchen
This commit is contained in:
parent
cb6814adad
commit
89e39872ff
|
@ -4,11 +4,12 @@
|
||||||
<title>Links for {{.PackageDescriptor.Package.Name}}</title>
|
<title>Links for {{.PackageDescriptor.Package.Name}}</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
{{- /* PEP 503 – Simple Repository API: https://peps.python.org/pep-0503/ */ -}}
|
||||||
<h1>Links for {{.PackageDescriptor.Package.Name}}</h1>
|
<h1>Links for {{.PackageDescriptor.Package.Name}}</h1>
|
||||||
{{range .PackageDescriptors}}
|
{{range .PackageDescriptors}}
|
||||||
{{$p := .}}
|
{{$pd := .}}
|
||||||
{{range .Files}}
|
{{range .Files}}
|
||||||
<a href="{{$.RegistryURL}}/files/{{$p.Package.LowerName}}/{{$p.Version.Version}}/{{.File.Name}}#sha256-{{.Blob.HashSHA256}}"{{if $p.Metadata.RequiresPython}} data-requires-python="{{$p.Metadata.RequiresPython}}"{{end}}>{{.File.Name}}</a><br>
|
<a href="{{$.RegistryURL}}/files/{{$pd.Package.LowerName}}/{{$pd.Version.Version}}/{{.File.Name}}#sha256={{.Blob.HashSHA256}}"{{if $pd.Metadata.RequiresPython}} data-requires-python="{{$pd.Metadata.RequiresPython}}"{{end}}>{{.File.Name}}</a><br>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</body>
|
</body>
|
||||||
|
|
|
@ -164,7 +164,7 @@ func TestPackagePyPI(t *testing.T) {
|
||||||
nodes := htmlDoc.doc.Find("a").Nodes
|
nodes := htmlDoc.doc.Find("a").Nodes
|
||||||
assert.Len(t, nodes, 2)
|
assert.Len(t, nodes, 2)
|
||||||
|
|
||||||
hrefMatcher := regexp.MustCompile(fmt.Sprintf(`%s/files/%s/%s/test\..+#sha256-%s`, root, regexp.QuoteMeta(packageName), regexp.QuoteMeta(packageVersion), hashSHA256))
|
hrefMatcher := regexp.MustCompile(fmt.Sprintf(`%s/files/%s/%s/test\..+#sha256=%s`, root, regexp.QuoteMeta(packageName), regexp.QuoteMeta(packageVersion), hashSHA256))
|
||||||
|
|
||||||
for _, a := range nodes {
|
for _, a := range nodes {
|
||||||
for _, att := range a.Attr {
|
for _, att := range a.Attr {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user