Serve gems api/v1 JSON as application/json
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful

This commit is contained in:
2026-10-17 12:41:37 +11:00
parent 5802d44471
commit ca7c8fa2a0
2 changed files with 11 additions and 5 deletions
+3
View File
@@ -33,6 +33,9 @@ func (p *Provider) ContentType(path string) string {
if path == "versions" || path == "names" || strings.HasPrefix(path, "info/") {
return "text/plain; charset=utf-8"
}
if strings.HasPrefix(path, "api/v1/") && strings.HasSuffix(path, ".json") {
return "application/json"
}
return "application/octet-stream"
}
+8 -5
View File
@@ -36,11 +36,14 @@ func TestClassify(t *testing.T) {
func TestContentType(t *testing.T) {
p := &Provider{}
tests := map[string]string{
"versions": "text/plain; charset=utf-8",
"info/rack": "text/plain; charset=utf-8",
"names": "text/plain; charset=utf-8",
"gems/rack-3.1.8.gem": "application/octet-stream",
"specs.4.8.gz": "application/octet-stream",
"versions": "text/plain; charset=utf-8",
"info/rack": "text/plain; charset=utf-8",
"names": "text/plain; charset=utf-8",
"gems/rack-3.1.8.gem": "application/octet-stream",
"specs.4.8.gz": "application/octet-stream",
"api/v1/gems/rack.json": "application/json",
"api/v1/dependencies.json": "application/json",
"api/v1/dependencies": "application/octet-stream",
}
for path, want := range tests {
if got := p.ContentType(path); got != want {