Як знизити версію Composer, PHP і NPM
TL;DR: Якщо ви працюєте над різними проектами, кожен із яких потребує різних версій PHP, Composer та/або NPM, вам може знадобитися змінити версію всіх або будь-яких перестановок будь-якої з цих утиліт.
У цій статті описано, які кроки потрібно виконати, щоб знизити версію Composer, PHP або NPM під час роботи над будь-яким проектом.
Понизити Composer, PHP і NPM
Пониження версії Composer 2 до Composer 1
Протягом останніх кількох місяців я використовував Composer 2 без проблем; однак мені щойно виникла потреба знизити версію Composer для поточного проекту.
Для цього виконайте таку команду в терміналі:
$ sudo composer self-update --1
Зазвичай це спрацьовує. Якщо ви робили щось подібне вже давно, можливо, вам знадобиться оновити ключі.
Перевірте ключі
Команди терміналу для оновлення цього досить прості з точки зору керівництва, як це зробити, але мати наступну URL-адресу буде зручно.
Спочатку візьміть цю URL -адресу: https://composer.github.io/pubkeys.html
.
Потім виконайте таку команду:
$ composer self-update --update-keys
Звідти термінал запропонує вам, який ключ потрібно ввести. Після цього ви зможете завершити процес пониження версії.
Понизити PHP
Я використовую Homebrew для керування різними інсталяціями PHP, які у мене є. Я працював над проектом, який використовував PHP8, але мені потрібно було знизити його версію.
Якщо припустити, що у вас уже є наявний пакет для версії PHP, яку ви хочете використовувати, ви можете використовувати одну з попередніх встановлених версій.
Наприклад, у /usr/local/Cellar/php@7.3
мене на локальній машині встановлено PHP 7.3.26. Щоб побачити, які версії ви встановили, я роблю приблизно так:
$ ls /usr/local/Cellar/php*
А структура поверне каталоги версій PHP, які я встановив. На момент написання цієї статті я мав:
/usr/local/Cellar/php
який є8.0.3
/usr/local/Cellar/php@7.3
який є7.3.27
Щоб використовувати старішу версію, мені спочатку потрібно від’єднати поточну версію PHP:
$ brew unlink php
А потім створіть посилання на попередню версію:
$ brew link php@7.3 --force --overwrite
І важливо використовувати назву каталогу (наприклад, php@7.3
цей термінал повертає вище).
Щоб переконатися, що це працює, ви повинні мати можливість запустити $ php -v
та переглянути версію, яка зараз виконується.
Понизити NPM
Подібно до попередніх двох елементів вище, мені потрібно було знизити пакет, який надійшов як інформація під час запуску npm i
в терміналі.
Якщо припустити, що попередження, помилка або сповіщення показують потрібну вам версію, тоді використовуйте це як посібник для версії, яку потрібно знизити.
Спочатку визначте поточну версію, виконавши:
$ npm -v
Потім, використовуючи інформацію з повідомлення в терміналі, виконайте таку команду:
$ npm install -g npm@6.13.4
Виконано, ще раз перевірте версію, використовуючи ту саму команду, що й вище, і вона має збігатися з тим, що ви щойно встановили.
Не все відразу
Очевидно, що вам може не знадобитися змінювати все це одночасно, а по одному. І це не дивно. Ця публікація є результатом моєї роботи над чимось від інтерфейсу до бекенда, що вимагало оновлення всього середовища.
Зрештою, оновлюйте або знижуйте лише те, що вам потрібно. Одне не потребує оновлення інших.