Description
Is your feature request related to a problem? Please describe.
Our company security policy does not allow us to download things from the public NPM registry, we have to use an internal mirror.
We are currently doing this by adding these lines below to an .npmrc file present in C:/Users/USERNAME
registry==https://INTERNAL_MIRROR
grpc_node_binary_host_mirror=https://INTERNAL_MIRROR
NODE_CHROMIUM_DOWNLOAD_HOST=https://INTERNAL_MIRROR
PLAYWRIGHT_DOWNLOAD_HOST=https://INTERNAL_MIRROR
nscc=https://INTERNAL_MIRROR
But from NPM version 11.2.0 this gives a depracated warning:
npm warn Unknown user config "grpc_node_binary_host_mirror". This will stop working in the next major version of npm.
npm warn Unknown user config "NODE_CHROMIUM_DOWNLOAD_HOST". This will stop working in the next major version of npm.
npm warn Unknown user config "PLAYWRIGHT_DOWNLOAD_HOST". This will stop working in the next major version of npm.
npm warn Unknown user config "nscc". This will stop working in the next major version of npm.
I tried to solve this by wrapping it in a .bat file:
SET grpc_node_binary_host_mirror=https://INTERNAL_MIRRORSET
SET NODE_CHROMIUM_DOWNLOAD_HOST=https://INTERNAL_MIRROR
SET PLAYWRIGHT_DOWNLOAD_HOST=https://INTERNAL_MIRROR
SET nscc=https://INTERNAL_MIRROR
rfbrowser clean-node
rfbrowser init
Which works in NPM 11.2.0 to remove the depracated warnings, but still fails in NPM 11.3.0.
Describe the solution you'd like
It seems NPM wants to get rid of global .npmrc settings files and wants everyone to put their settings into their package.json file. See also: giggio/node-chromedriver#535
This works for individual npm projects, but not for the Browser Library.
Because this means I would have to write a script to insert our company proxy settings into the Browser Library package.json, a script that would have to be run after every update of the Browser Library. Which is not exactly ideal.
Describe alternatives you've considered
I would like a way to tell rfbrowser_init to use our internal mirror without having to alter the package.json after every update, or things will get messy and complicated for every company that relies on a mirror.