Подтвердить что ты не робот

Самообновление пряжи бросает ошибку аутентификации OAuth2

Я пытаюсь выполнить команду yarn self-update, чтобы увидеть, как она работает, но вместо обновления версии Yarn она выдает ошибку OAuth, например,

yarn self-update
yarn self-update v0.15.1
error OAuth2 authentication requires a token or key & secret to be set
    at __dirname.authenticate (/Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/node_modules/github/lib/index.js:334:23)
    at Object.<anonymous> (/Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/lib/cli/commands/self-update.js:30:12)
    at next (native)
    at step (/Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
    at /Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
    at new Promise (/Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/node_modules/core-js/library/modules/es6.promise.js:191:7)
    at Object.<anonymous> (/Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
    at Object.run (/Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/lib/cli/commands/self-update.js:99:17)
    at run (/Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/lib/cli/index.js:237:18)
    at config.init.then (/Users/nikjohn/.nvm/versions/node/v6.4.0/lib/node_modules/yarn/lib/cli/index.js:345:12)
info Visit http://yarnpkg.com/en/docs/cli/self-update for documentation about this command.

Кто-нибудь знает, почему это так и что нужно сделать, чтобы решить эту проблему? Согласно документам здесь, эта команда не имеет такой зависимости OAuth и IMHO тоже не должна.

Похоже, там PR для этого уже здесь

Изменить: Дальнейшие исследования показывают, что это известная ошибка с пряжей. Но резолюция по-прежнему недоступна. Было бы странным catch22, если исправление вытесняется как новая версия, но пользователи не могут обновляться, потому что команда терпит неудачу. Одним из возможных решений является yarn self-update [tag] вместо yarn self-update, но это остается ошибкой. *

Изменить: Я понял, что есть еще одно обходное решение

yarn version
yarn version <version-number>
4b9b3361

Ответ 1

Используйте npm -g install yarn, чтобы обновить его. Я получил обновление до пряжи v0.16.0, и теперь yarn self-update, похоже, работает.

Ответ 2

Сначала удалите пряжу с помощью этой команды:

rm -rf ~/.yarn

И затем установите его снова, используя эту команду (например):

curl -o- -L https://yarnpkg.com/install.sh | bash

Ответ 3

TL; DR

Обновить до ≥0.16.0:

Ubuntu

apt-get update ; apt-get install yarn

MacOS

brew update ; brew upgrade

NPM

npm install -g yarn --update

Описание

Если проблема связана с 0.15.0, и, глядя на нее, многие люди добавляют ту же проблему.

$ yarn --version
0.15.0

Чтение примечаний для v0.16.0

Исправить самообновление (# 676)

Так просто обновите:

yarn self-update
yarn self-update v0.16.0
success Yarn is already using the latest version.
Done in 0.69s.

Ответ 4

npm uninstall -g yarm 
npm cache clean
npm install -g yarm