Valet 4 официально выпущен! Давайте рассмотрим, что предлагает v4 и как вы можете обновить локальную установку сегодня.
Фон
Valet был первоначально представлен в мае 2016 года с этим невероятным видео. Valet v2 был выпущен вскоре после этого, что привело к переходу от Caddy к Nginx. Но после этого развитие на Valet замедлилось; Как часто отмечал Тейлор, «в тот момент Valet был завершен».
Однако, когда я взялся за обслуживание Valet несколько лет назад, я заметил две вещи: во-первых, многим людям нужны разные версии PHP для их разных сайтов; и, во-вторых, что различные функции и исправления ошибок, устраняемые на протяжении многих лет, иногда затрудняли кодовую базу.
Valet v3 был выпущен в марте 2022 года, с основным акцентом на добавление поддержки нескольких версий PHP, работающих параллельно на одной машине.
А теперь мы смотрим на Valet v4.
Что нового в Valet 4?
Самое важное изменение в Valet 4 - это то, что вы даже не можете увидеть со стороны: внутренние части проекта были переработаны и сильно протестированы. Чтобы было ясно, они были перестроены обратно в стиль простоты, который был у Тейлора и Адама. Но теперь они покрыты всеми формами модульных и интеграционных тестов, и изменения, внесенные после Valet 2, теперь гораздо лучше интегрированы.
Что это значит?
Valet 4 является самой стабильной, простой в отладке и простой в исправлении версией Valet.
Новые функции в Valet 4
Есть несколько новых функций, ориентированных на пользователя:
valet status
команда: Если вы запуститеvalet status
, вы получите таблицу, показывающую вам «работоспособность» нескольких важных аспектов вашего приложения Valet. Это полезно как потому, что вы можете использовать его при отладке, но, как и любой хороший инструмент CLI, он также будет возвращать коды успеха или неудачи, которые могут использовать другие инструменты CLI.- Обновления до ngrok: если вы используете ngrok для совместного использования своих сайтов, более старые версии Valet объединяют ngrok в качестве установки. Теперь Valet предложит вам установить ngrok через Homebrew, что позволит вам установить одну универсальную версию и позволит вам поддерживать ее в актуальном состоянии по своему усмотрению.
- Предоставление в качестве опции общего доступа: если вы используете Expose для обмена своими сайтами, теперь он интегрирован в Valet! Запустите
valet share-tool expose
и, если у вас не установлен Expose, он предложит вам установить его. После настройки маркера Expose вы можете предоставить общий доступ с помощью той жеvalet share
команды, с которой вы знакомы.
Примечания к
обновлению Если вы обновляетесь с Valet 3, вот мой предпочтительный способ обновления:
- Отредактируйте файл
~/.composer/composer.json
и обновите требование Valet до "^4.0"
Update:composer global update laravel/valet
Run
valet install
Убедитесь, что вы запускаете valet install
, так как он проверит совместимость вашей системы и обновит некоторые файлы конфигурации для вас.
Пользовательские драйверы
Если у вас есть какие-либо пользовательские драйверы, вы захотите обновить их в соответствии с новым синтаксисом (в основном, драйверы теперь имеют пространство имен и имеют подсказки типа и возвращаемые типы).
.valetphprc
Если вы используете для .valetphprc
определения версий PHP ваших сайтов, вы захотите переименовать эти файлы .valetrc
и изменить их содержимое; .valetphprc
файлы просто содержат формулу PHP Brew (например[email protected]
, ), но новые .valetrc
файлы являются более широкими конфигурационными файлами, поэтому вам нужно будет префикс формулы с php=
.
Поэтому, если в вашем проекте есть этот .valetphprc
файл:
[email protected]
вы захотите переименовать его .valetrc
и обновить его содержимое до этого:
[email protected]
Обратная совместимость: PHP 7.1-7.4
Valet 4 требует, чтобы PHP 8.0 + был установлен в вашей системе через Homebrew. Как я уже упоминал, вы можете использовать функцию изоляции Valet, чтобы настроить отдельные сайты на использование более старых версий PHP, начиная с 7.1.
Однако, если у вас есть причина, по которой вам нужно использовать PHP 7.1-7.4 в качестве основного связанного PHP (то есть, если вы просто вводитеphp -v
, вы видите что-то между 7.1 и 8.0), вы можете это сделать! Просто убедитесь, что на вашем компьютере установлена современная версия PHP, и Valet будет использовать эту версию для выполнения своих внутренних команд.
Тем не менее, краткое предупреждение: если вы используете Valet 4 и ваша основная связанная версия PHP ниже, чем PHP 8, все ваши локальные команды Valet CLI будут выполняться немного медленнее, так как они должны найти вашу современную установку PHP и проксировать свои вызовы через нее.
Будущее
Вот и все! Основной целью Valet 4 является стабильность, но она также открывает новые возможности для будущего. Во-первых, файл намного .valetrc
мощнее, чем .valetphprc
был, и мы можем сделать его намного более настраиваемым. А во-вторых, я отказался от концепции под названиемExtensions
, которая в основном полностью не использовалась, с надеждой построить систему плагинов когда-нибудь в ближайшем будущем.
Если бы вы следили за моим путешествием по восстановлению Valet для v4 в Twitter, вы, возможно, видели, что я пытался заставить его работать на Linux. К сожалению, это не увенчалось успехом, но у меня все еще есть мечты о том, чтобы однажды попробовать это снова. Никаких обещаний... но это все еще мечта!
Я надеюсь, что вы все любите Valet 4. Наслаждаться!