Angular `ng update @angular/...` returns `401 Unauthorized`
I was struggling with the same error message. For me it was caused by a custom .npmrc
in the project directory which contained information about howto connect to our npm registry.
Here's how I resolved it:
- removed the file during the update (
mv .npmrc backup.npmrc
) - removed all dependencies to artifacts from our internal npm registry from the
package.json
- ran
ng update @angular/cli
- moved file back to old position
mv backup.npmrc .npmrc
- ran
npm install
(just to make sure)
I also created an angular-cli issue at https://github.com/angular/angular-cli/issues/10704
As indicated in the accepted answer this problem comes from having a custom registry defined somewhere in your configuration. Via .rc files such as .yarnrc
or .npmrc
or set directly with the npm config set registry <url>
or yarn config set <name>:registry <url>
. You don't need to undo these registry configurations to work around the issue! The ng update
command will take a registry url as an argument. However, you will have to remove any reference to packages that rely on your custom registry. Don't worry the command will tell you what the offending packages are, just run the command like so:
for yarn:
ng update @angular/cli @angular/core --registry https://registry.yarnpkg.com
for npm:
ng update @angular/cli @angular/core --registry https://registry.npmjs.org
Should result in an error like:
Not found : @fortawesome/fontawesome-pro
Then you can temporarily remove the offending package from your dependencies in package.json and try again.