<p>Самообновление пряжи должно обновляться с использованием того же метода установки, который использовался изначально</p>

Созданный на 17 окт. 2016  ·  64Комментарии  ·  Источник: yarnpkg/yarn

Вы хотите запросить _функцию_ или сообщить _ об ошибке?
Характерная черта

Каково текущее поведение?
yarn self-update всегда загружает архив.

Какое поведение ожидается?
yarn self-update следует обновить, используя тот же метод установки, который использует пользователь. Например, если Yarn был установлен через пакет Debian / Ubuntu, yarn self-update должен запустить sudo apt-get update && sudo apt-get install yarn . В Windows при установке через установщик он должен загрузить https://yarnpkg.com/latest.msi и запустить его.

Это тесно связано с # 1138 («добавить проверку версии пряжи при запуске») в том смысле, что обе проблемы требуют некоторого способа определения метода установки, используемого пользователем.

cat-feature good first issue help wanted high-priority triaged

Самый полезный комментарий

@kristojorg У меня была такая же проблема. Я (думаю, что) исправил это, выполнив кучу вещей:

  1. Удаление двоичных файлов пряжи вручную:
# remove binaries
rm -f /usr/local/bin/yarnpkg
rm -f /usr/local/bin/yarn

# remove cache
rm -rf ${HOME}/.yarn
  1. Если у вас есть следующее в вашем .zshrc или .bash_profile , удалите его:
export PATH="$PATH:`yarn global bin`"
  1. Установить через curl :
curl -o- -L https://yarnpkg.com/install.sh | bash
  1. Убедитесь, что в вашем .zshrc или .bash_profile есть следующая строка:
export PATH="$HOME/.yarn/bin:$PATH"

Теперь, если вы попытаетесь запустить yarn -v , вы должны получить последнюю стабильную версию.

Все 64 Комментарий

Вы хотите закрыть это, поскольку self-update был удален с помощью https://github.com/yarnpkg/yarn/pull/1429?

Нет, мы планируем восстановить версию самообновления, в которой используются правильные
способ установки.

Отправлено с телефона.

7 декабря 2016 г. в 2:04 «Скотт Буше» [email protected] написал:

Вы хотите закрыть это, поскольку самообновление было удалено с помощью # 1429
https://github.com/yarnpkg/yarn/pull/1429 ?

-
Вы получаете это, потому что вы являетесь автором темы.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/yarnpkg/yarn/issues/1139#issuecomment-265172525 или отключить звук
нить
https://github.com/notifications/unsubscribe-auth/AAFnHdMyShESFRQIiqAJhZEWI_HgajUoks5rFXmNgaJpZM4KYOBW
.

https://yarnpkg.com/en/docs/cli/self-update, вероятно, следует удалить / обновить

Если я использую 0.18.1, как мне обновиться до следующей версии?

@ meta-meta В настоящее время вам необходимо выполнить обновление вручную.

как насчет yarn global add yarn ?

Я большой поклонник Yarn, но меня немного беспокоит, как самообновление было удалено без уведомления об устаревании, без упоминания в примечаниях к выпуску , и что оно было связано с PR, который в значительной степени не связан и где не было обсуждение удаления самообновления.

Я понимаю, что для Yarn это только начало и следует ожидать изменений API, но было бы хорошо, если бы существовал процесс удаления основных функций.

(извините, если это не подходящее место для обсуждения, но этот PR - это то, на что ссылаются документы )

как насчет пряжи global add yarn?

Установка Yarn через Yarn в настоящее время не поддерживается и может вызвать несколько проблем. В данный момент мы не рекомендуем это делать.

@dancoates - Команда самообновления никогда не работала на 100% правильно, этот PR просто удалил остатки существующей команды при добавлении некоторых элементов фреймворка для нового самообновления (которое появится в будущем, согласно этой проблеме)

Как обновить пряжу вручную? Не уверен в этом, я использовал brew на своем Mac, чтобы заставить его работать, но не уверен, что здесь означает «руководство» ... любые советы приветствуются.

Обновите его так же, как и любое другое приложение, установленное с помощью Homebrew.
Я предполагаю, что у него есть команда «обновить».

Отправлено с телефона.

26 января 2017 г. в 9:11 "Cato" [email protected] написал:

Как обновить пряжу вручную? Не уверен насчет этого, я использовал варево на своем
mac, чтобы заставить его работать, но не уверен, что здесь означает "руководство" ... любые советы
оценен.

-
Вы получаете это, потому что вы являетесь автором темы.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/yarnpkg/yarn/issues/1139#issuecomment-275447861 или отключить звук
нить
https://github.com/notifications/unsubscribe-auth/AAFnHSm1RTv0bZMHtPxkWkS01hPl5Rm3ks5rWNPJgaJpZM4KYOBW
.

@CatinhoCR Сначала я установил npm uninstall -g yarn а затем brew install yarn - и теперь у меня есть последняя версия. Он также будет работать с использованием команды brew upgrade, как упоминал @ Daniel15 .

npm update yarn -g

Вы можете установить пряжу homebrew шириной. Итак, brew uninstall yarn И это не лучший вариант для установки пряжи с homebrew, когда вам нужно поперек стены. Каждый раз, когда вам нужно заварить обновление. Это всегда время ожидания .....

К сожалению, npm update yarn -g не всегда помогает. Например, он не обновлялся с версии 0.20.3 до версии 0.21.3 на моей машине OS / X. Но сработало следующее:

npm uninstall yarn -g
npm install yarn -g

У npm иногда возникают странные проблемы, поэтому мы не рекомендуем использовать его для установки Yarn.

@wardbell Простой запуск установки тоже работает:

npm install yarn -g

Не нужно сначала удалять.

Я пробовал обновить вручную через homebrew, но когда я набираю yarn --version он все еще показывает 19.0. Я сейчас пытаюсь удалить, но, похоже, тоже не могу этого сделать ... yarn --version прежнему показывает 19.0 после brew uninstall yarn . Я также попробовал npm uninstall yarn но тоже безуспешно.

Можете ли вы сказать мне, что мне нужно удалить, чтобы полностью удалить yarn и установить новую версию?

@kristojorg У меня была такая же проблема. Я (думаю, что) исправил это, выполнив кучу вещей:

  1. Удаление двоичных файлов пряжи вручную:
# remove binaries
rm -f /usr/local/bin/yarnpkg
rm -f /usr/local/bin/yarn

# remove cache
rm -rf ${HOME}/.yarn
  1. Если у вас есть следующее в вашем .zshrc или .bash_profile , удалите его:
export PATH="$PATH:`yarn global bin`"
  1. Установить через curl :
curl -o- -L https://yarnpkg.com/install.sh | bash
  1. Убедитесь, что в вашем .zshrc или .bash_profile есть следующая строка:
export PATH="$HOME/.yarn/bin:$PATH"

Теперь, если вы попытаетесь запустить yarn -v , вы должны получить последнюю стабильную версию.

Спасибо!

@kristojorg Вы можете также изменить 2. иметь ${HOME} вместо /Users/adrianmcli

* Просто добавляю это для удобства пользователей Microsoft Windows.
Если вы изначально установили Yarn с помощью Chocolatey (диспетчера пакетов для Windows), то чтобы обновить его до последней версии, просто выполните следующие действия:

  1. Запустите командную оболочку Windows (cmd.exe) от имени администратора.
  2. Выполните команду: c:> choco upgrade yarn
  3. Запустите c:> yarn --version и убедитесь, что он обновлен до последней версии. Вуаля!

В Ubuntu 16.04 yarn автоматически обновляется через Software & Updates.

У меня была аналогичная проблема, и проблема заключалась не в том, что npm не обновлял yarn (это было так), а в том, что в моей среде, по-видимому, было две ссылки:

Один для /usr/bin/yarn который указывал на /usr/lib/node_modules/yarn/bin/yarn.js (это была самая последняя версия, установленная npm)

И один для /usr/local/bin/yarn который указывал на /usr/local/lib/node_modules/yarn/bin/yarn.js (это была старая версия)

Я не знаю, откуда взялся /usr/local/bin/yarn link , но он использовался моей оболочкой, когда я просто набрал yarn . Я удалил ссылку, и теперь все хорошо.

@MDM Как вы удалили ссылку /usr/local/bin/yarn если не знали, откуда она взялась?

@skube sudo unlink /usr/local/bin/yarn

@MDM Спасибо. Итак, я сделал unlink /usr/local/bin/yarn который, похоже, сработал.
а затем, чтобы обновить до последней версии, запустил npm i -g yarn который, казалось, просто снова подключился

❯ npm i -g yarn
/usr/local/bin/yarnpkg -> /usr/local/lib/node_modules/yarn/bin/yarn.js
/usr/local/bin/yarn -> /usr/local/lib/node_modules/yarn/bin/yarn.js

И все же я до сих пор не обновился до последней версии 0.24.6

❯ yarn -v
yarn install v0.24.5
[1/4] 🔍  Resolving packages...
success Already up-to-date.
✨  Done in 1.51s.

Интересно, что когда я делаю sudo npm install --global yarn , ссылки / usr / local / bin не создаются, поэтому в наших средах есть некоторая разница, которую я не могу учесть. Что касается 0.24.5, которая является доступной версией, это может быть проблемой npm - 0.24.6 по какой-то причине не устанавливается.

Могу подтвердить, что 0.24.6 не устанавливается. У меня 0.24.5, и когда я запускаю npm outdated -g , npm не распознает доступное обновление. Я не знаю, проблема ли это в npm или в пакете пряжи.

Я использую nvm для управления установками моих узлов, поэтому у меня нет выбора. Мне нужно использовать npm для установки пряжи.

Интересно, что на другой машине мне удалось ...

warning Your current version of Yarn is out of date. The latest version is "0.24.6" while you're on "0.21.3".
info To upgrade, run the following command:
$ curl -o- -L https://yarnpkg.com/install.sh | bash

Так я и сделал

❯ curl -o- -L https://yarnpkg.com/install.sh | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  6746    0  6746    0     0  22490      0 --:--:-- --:--:-- --:--:-- 22561
Installing Yarn!
/usr/local/bin/yarn
> Downloading tarball...

> We've added the following to your .zshrc
> If this isn't the profile of your current shell then please add the following to your correct profile:

export PATH="$HOME/.yarn/bin:$PATH"

> Successfully installed Yarn 0.24.6! Please open another terminal where the `yarn` command will now be available.

@octopitus В моем случае мне пришлось добавить разрешения с помощью sudo yarn add global yarn .

brew upgrade yarn и brew link --overwrite node работали над обновлением пряжи на OSX sierra

Вы имеете в виду brew link --overwrite yarn для второй команды, верно?

Я считаю, что @localredhead установил пряжу с узлом. Я установила пряжу следующим образом:
brew install yarn --without-node , потому что я управляю узлом с помощью nvm .

Вероятно, он перезаписывает ссылку на узел, чтобы использовать правильную версию вместо той, которая идет с / от yarn.

Некоторым это может показаться очевидным, но в Windows мой был установлен (я думаю, из MSI или из сценария установки dev env, предоставляемого моей компанией) в Program Files (x86) . Независимо от того, какой метод обновления я использовал, yarn version не сдвинулся с места. В конце концов я обнаружил причину с помощью which yarn который указывал на место нарушения. Мне пришлось использовать Windows «Изменить или удалить программу», чтобы сначала удалить ее, а затем просто npm install -g yarn чтобы переустановить последнюю версию. Теперь я могу просто использовать npm для управления версией, что намного лучше.

@mikechamberlain У меня это сработало, спасибо!

Последнее состояние: нам нужно повторно реализовать команду self-update которая использует исходный метод установки.

Работаем над повторной реализацией.

@onurtemizkan Это должно быть относительно просто. Не стесняйтесь писать мне, если вы застряли :)

У нас уже есть информация о команде, которую необходимо запустить (поскольку Yarn выводит уведомление с командой, когда версия устарела), Yarn просто нужно ее запустить. Немного другой случай в Windows, когда использовался установщик, так как нам нужно было бы загрузить установщик, а затем msiexec.

Извините, что прерываю 😉

Думали ли вы, что просто делегируйте это npm (при условии, что, конечно, yarn работает, если npm существует в первую очередь).

» npm update -g yarn

Приятно то, что если не получится, всегда можно:

So we tried to get npm to handle the update...

Here are your options:
…

Now, aren't u glad to be using yarn for your other packages!

@smotaal С этим есть несколько проблем:

  • Если вы установили Yarn другим способом, теперь у вас будут установлены две версии Yarn (одна через системный менеджер пакетов, а другая через npm).
  • Не у всех установлен npm. Yarn не требует установки npm для запуска

если ваша система - Windows и на ней установлен npm, вы можете использовать npm install yarn<strong i="5">@latest</strong> -g для обновления до верхней версии.

Я не могу вспомнить, как я настроил его на этом Mac примерно год назад, я знаю, что в какой-то момент я использовал что-то другое, кроме NPM, но когда я потерял свой поток, я просто NPMed, и у меня нет проблем, кроме жалоб на пряжу, когда Я сильно отстала, что напоминает мне об обновлении, и я просто npm update -g yarn и забываю об этом до следующего напоминания.

С точки зрения пользователя, я думаю, что yarn может порекомендовать «поддерживаемый» и, возможно, упомянуть «неофициальный», где, если «неофициальный» и он не «работает должным образом», используйте «поддерживается» для установки, а здесь «рекомендуется», если вам нужно отменить "неофициальный"

Честно говоря, для менеджера пакетов важно иметь четкий путь для правильного управления.

@onurtemizkan , ты все еще над этим работаешь?

Есть ли обновления?
Мой текущий подход: yarn global add yarn@latest который не кажется идеальным

Для тех, кто просто хочет автоматически обновлять yarn в Windows, без необходимости загружать двоичный файл, я некоторое время использовал для этого choco , и он выполняет эту работу безупречно. Это инструмент командной строки для установки программ (как и apt-get ). Вы просто запускаете choco install yarn , и yarn установлена. Для обновления используется команда choco upgrade yarn .

Нет, извините, шоколадное это просто ужасно.

Если вам не нравится Chocolatey, не используйте его.

Я думаю, что это неплохо. На работе у нас много внутренних
Шоколадные пакеты для различных программных пакетов. Кажется, работает хорошо.

В любом случае эта проблема предназначена специально для повторной реализации самообновления в
Пряжа. Он будет использовать Chocolatey, только если это то, что вы использовали изначально! если ты
использовал установщик напрямую, обновления также будут использовать установщик
прямо. Так что это не заставит вас использовать Chocolatey.

Отправлено с телефона.

Пт, 20 апреля 2018 г., 8:25 Benjamin Staneck [email protected]
написал:

Нет, извините, шоколадное это просто ужасно.

-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/yarnpkg/yarn/issues/1139#issuecomment-382869380 или отключить звук
нить
https://github.com/notifications/unsubscribe-auth/AAFnHRZ-MoIxY2rwVGVHWCqXEPQRAlKHks5tqPKggaJpZM4KYOBW
.

Scoop - альтернатива Chocolatey и очень похож на варево.

Пряжа только что сказала мне, что моя версия пряжи устарела, и попросила меня обновить ее до последней версии. Однако эта рекомендация - команда curl & bash - меня немного смущает. Разве эта команда не могла бы эффективно заменить необходимость curl & pipe to bash для обновления пряжи? Будет ли эта команда действовать как основной и частый метод обновления пряжи?

Это довольно плохой опыт для новых пользователей:

1) Загрузите официальный и текущий образ LTS Docker (10.12.1) для узла, который включает Yarn 1.10.1.
2) yarn import
3) yarn install говорит, что версия yarn устарела, и рекомендует команду curl | bash , что обычно считается плохой идеей системными администраторами и командами DevOps.
4) Найдите и запустите yarn self-update на https://yarnpkg.com/en/docs/cli/self-update, который ссылается на эту проблему Github.
5) Забудьте, какая проблема с npm заставила меня в первую очередь попробовать yarn.

Это безумие, как это до сих пор не исправлено. По прошествии более года, я думаю, что мое решение ( здесь ) по-прежнему остается самым чистым (хотя оно утомительно и раздражает).

Мы должны сотрудничать, чтобы получить для этого команду! Тяжелая работа установщика уже сделана, нужно упаковать замену и запустить команду пряжи.

все еще не работает?!

Я снова резюмирую свое решение выше :

  1. Удалить пряжу вручную

    # remove binaries
    rm -f /usr/local/bin/yarnpkg
    rm -f /usr/local/bin/yarn
    
    # remove cache
    rm -rf ${HOME}/.yarn
    

    Если в вашем .zshrc или .bash_profile есть следующее, удалите его:

    export PATH="$PATH:`yarn global bin`"
    
  2. Установите последнюю версию Yarn (через curl)

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

    Убедитесь, что в вашем .zshrc или .bash_profile есть следующая строка:

    export PATH="$HOME/.yarn/bin:$PATH"
    

Наконец, запустите yarn -v чтобы проверить номер новой версии.

Если кто-то хочет поработать над этим ... На самом деле у нас уже есть код, который определяет команду, которую нужно запустить для обновления Yarn:
https://github.com/yarnpkg/yarn/blob/master/src/cli/commands/install.js#L86 -L129

Вам просто нужно добавить команду «самостоятельного обновления», которая запускает правильную команду.

@ Daniel15 Я отправил для этого

Это работает для меня:

brew upgrade yarn
npm update yarn -g

Есть новости по этому поводу? Я полагаю, что пока что npm update yarn -g работает.

Есть новости по этому поводу?

@crmpicco На данный момент вам все еще нужно выполнить обновление вручную.

Кажется, что yarn policies set-version [range] был реализован @arcanis и может получить и установить последнюю версию. Хотя эргономика команды не предполагает установки новой версии Yarn - она ​​все еще работает.

Итак, yarn policies set-version nightly предоставит вам последнюю сборку. PR:
https://github.com/yarnpkg/yarn/pull/6673

Я не уверен, что это будет значить, если вы хотите удалить yarn. : мышление:

В документации есть раздел Upgrade Yarn: https://yarnpkg.com/en/docs/install

@ ilias-t речь идет не об обновлении, а об использовании того же метода установки для обновления.

Эта проблема возникла более двух лет назад, похоже, вам все равно. Просто удалите команду, она не работает и вводит в заблуждение.

Этой команды не существует, поэтому удалить ее будет сложно 🙂

Насколько мне известно, я считаю, что первоначальная цель этой проблемы исправлена ​​с помощью yarn policies set-version . В случае, если это не сработает должным образом, пожалуйста, создайте новый выпуск.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги