Affects Version/s: 6.3.3
Fix Version/s: None
UPDATE: NPMJS have fixed the metadata on their end, we tested all 5 known packages and they all seem to resolve properly. Fix would still be nice for checking both decoded and encoded when doing a HEAD request.
We've tried to reach out to NPMJS directly with no success. More of an issue on NPMJS but since the NPM client doesn't (seem) to see this issue, perhaps its something we can fix on our end.
We've (re)discovered a issue, with HEAD/GET requests, where 5 packages (that we know of) will 404 when Artifactory reaches out to get it's metadata from registry.npmjs.org:
e.g. trying to hit registry.npmjs.org/@pm2/io will fail (404). If we encode the last slash, to registry.npmjs.org/@pm2%2fio, then it loads properly. A working package will work with the decoded slash, e.g: registry.npmjs.org/@angular/core
The packages all exist on NPMJS, artifactory only checks the decoded slash, perhaps we can have it check BOTH registry.npmjs.org/@pm2/io and registry.npmjs.org/@pm2%2fio?
We currently have 2 workarounds:
Add package to local
Bypass HEAD requests
Artifactory logs are just 404:
2018-09-06 17:39:13,165 [art-exec-33] [INFO ] (o.a.a.g.i.GemsRemoteIndexHandler:63) - Finished updating remote repo index for gems-remote
2018-09-06 17:39:32,021 [http-nio-8081-exec-8] [DEBUG] (o.j.r.n.r.h.NpmLocalRepoHandler:54) - Handling package metadata request for package 'npm'
2018-09-06 17:39:32,268 [http-nio-8081-exec-8] [INFO ] (o.a.r.HttpRepo :415) - npm-remote downloading https://registry.npmjs.org/npm 7.72 MB
2018-09-06 17:39:32,826 [http-nio-8081-exec-8] [INFO ] (o.a.r.HttpRepo :428) - npm-remote downloaded https://registry.npmjs.org/npm 7.72 MB at 14,196.83 KB/sec
2018-09-06 17:39:32,843 [http-nio-8081-exec-3] [DEBUG] (o.j.r.n.r.h.NpmLocalRepoHandler:54) - Handling package metadata request for package '@reach/router'
2018-09-06 17:39:33,203 [http-nio-8081-exec-8] [DEBUG] (o.a.a.n.r.m.NpmPackageMetadataMerger:144) - Skipping external dependencies check, config is empty