{"record":{"id":"8140a30f9481dc67","repo":"goharbor/harbor","slug":"dockerhub-only-support-repo-in-format-namespace","errorCode":null,"errorMessage":"dockerhub only support repo in format <namespace>/<name>, but got: %s","messagePattern":"dockerhub only support repo in format <namespace>/<name>, but got: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/pkg/reg/adapter/dockerhub/adapter.go","lineNumber":389,"sourceCode":"\t\tsubstrings := strings.Split(pattern, \"/\")\n\t\tnamespacePattern := substrings[0]\n\t\tif nms, ok := util.IsSpecificPathComponent(namespacePattern); ok {\n\t\t\tnamespaces = append(namespaces, nms...)\n\t\t}\n\t}\n\tif len(namespaces) > 0 {\n\t\tlog.Debugf(\"parsed the namespaces %v from pattern %s\", namespaces, pattern)\n\t\treturn namespaces, nil\n\t}\n\treturn a.listNamespaces()\n}\n\n// DeleteManifest ...\n// Note: DockerHub only supports delete by tag\nfunc (a *adapter) DeleteManifest(repository, reference string) error {\n\tparts := strings.Split(repository, \"/\")\n\tif len(parts) != 2 {\n\t\treturn fmt.Errorf(\"dockerhub only support repo in format <namespace>/<name>, but got: %s\", repository)\n\t}\n\n\tresp, err := a.client.Do(http.MethodDelete, deleteTagPath(parts[0], parts[1], reference), nil)\n\tif err != nil {\n\t\treturn err\n\t}\n\tdefer resp.Body.Close()\n\n\tbody, err := io.ReadAll(resp.Body)\n\tif err != nil {\n\t\treturn err\n\t}\n\n\tif resp.StatusCode/100 != 2 {\n\t\tlog.Errorf(\"Delete tag error: %d -- %s\", resp.StatusCode, string(body))\n\t\treturn fmt.Errorf(\"%d -- %s\", resp.StatusCode, string(body))\n\t}\n","sourceCodeStart":371,"sourceCodeEnd":407,"githubUrl":"https://github.com/goharbor/harbor/blob/7b2fd08cc568955cca339afeefab27372840d936/src/pkg/reg/adapter/dockerhub/adapter.go#L371-L407","documentation":"Error \"dockerhub only support repo in format <namespace>/<name>, but got: %s\" thrown in goharbor/harbor.","triggerScenarios":"Thrown at src/pkg/reg/adapter/dockerhub/adapter.go:389 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7b2fd08cc568955cca339afeefab27372840d936","analyzedAt":"2026-08-16T00:00:10.961Z","schemaVersion":2},"datasetVersion":"2026-08-16T03:17:38.424Z"}