Как понизить версию Dart с Homebrew

У меня Mac, и я обновился до Dart 2.8 с Dart 2.7.1, запустив

brew upgrade dart

как описано в документации.

Однако версия 2.8 содержит некоторые критические изменения для фреймворка Aqueduct, поэтому я хочу перейти на Dart 2.7.2.

Я пытался

brew install [email protected]

но получил

Ошибка: нет доступной формулы с именем "[email protected]"

Я тоже пробовал

brew search dart

но только получил

dart-lang / dart / dart ✔
dart-lang / dart / dart-beta
dart-lang / dart / dart @ 1
dart-lang / dart / dart @ 2
dartsim

Нет возможности выбрать более раннюю версию 2.x.

Как мне перейти на более раннюю версию?


person Suragch    schedule 07.05.2020    source источник


Ответы (1)


  1. запустите brew info dart и найдите ссылку на формулу, например
    From: https://github.com/dart-lang/homebrew-dart/blob/master/dart.rb

  2. откройте ссылку с формулой в браузере, и вы перейдете на главную страницу репозитория ветки.

  3. вернитесь в браузере на страницу репо и нажмите История.

    • scroll down until you see the version you're interested in, for example "Updated stable branch to revision 2.7.2"
    • щелкните Обновленная стабильная ветка до версии 2.7.2 и в верхней части страницы различий возьмите полный идентификатор (хэш) фиксации, например fed6de080aef54c4f1c1df732424df37cd3e5a3e
      (сохраните полный идентификатор фиксации (хеш), он понадобится вам на шаге 5)
  4. запустить brew uninstall dart

  5. установите старую версию Dart с помощью
    brew install https://raw.githubusercontent.com/dart-lang/homebrew-dart/fed6de080aef54c4f1c1df732424df37cd3e5a3e/dart.rb

    • In the command above, the url is obtained by using the url you saved in step 2 and replacing the word master with the commit ID (hash) fed6de080aef54c4f1c1df732424df37cd3e5a3e obtained in step 3.

***Note:*** you can keep the older Dart version (for `brew upgrade`) if you pin it with `brew pin dart`
person Alex Baban    schedule 07.05.2020