Does Artifactory Support Shrinkwrap NPM dependency urls?

David Xu
2019-07-08 22:35

Subject 

npm Shrinkwrapped URLs cause errors when proxied

Description

Artifactory does not support shrinkwrap URLs for NPM dependencies.  The npm client uses checksums in order to verify a package, and using shrinkwrap forces changing the checksum on-the-fly. This is time consuming and will result in a time out.
Additionally hard coding NPM dependency URLs is not best practice and shrinkwrapped URLs are known to have issues when interacting with proxies:

Npm install -ddd will show resolution ignoring .npmrc configurations
id="docs-internal-guid-e8cfb494-8566-01c0-f04c-590266a187d6">Usually to registry.npmjs.org

  • Resolution results in a 400 error

    • One possible error is “418: I am a teapot”

  • If registry.npmjs.org is unavailable, the resolution could hang and/or time out

Resolution

Hardcoded urls are outside of the control of Artifactory and best practice for NPM
For more details see NPM blog here: