[CMS, PHP, Laravel] Как обновить October CMS до Laravel 6?
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Продолжаем рассматривать October CMS, вокруг которой мы в LOVATA построили разработку веб-проектов и в особенности интернет-магазинов. Сегодня мы подготовили для вас инструкцию по обновлению вашей текущей установки October до долгожданной версии 1.1.x с Laravel 6 “под капотом”.Прошло больше года с момента выхода шестой версии фреймворка Laravel. А некоторое время назад и October CMS, для которой мы разработали e-commerce-платформу Shopaholic, выпустила долгожданный релиз под номером 1.1.0 с поддержкой Laravel 6. Как вы, возможно, заметили, принцип нумерации версий тоже изменился, он стал лучше отражать текущее положение вещей.Предвосхищая возможные комментарии по поводу актуальной мажорной версии Laravel, поясняю, что до сих пор October CMS базировался исключительно на LTS-релизах. Это кажется разумным выбором в свете того факта, что ранее имели место случаи сломанной обратной совместимости даже при повышении очередной минорной версии фреймворка.Переход на Laravel 6Общие сведенияЯдро October претерпело много серьёзных изменений, что и стало причиной достаточно длительного ожидания. При этом релиз Laravel 6 отмечен как LTS (Long Term Support), что означает увеличенный жизненный цикл и длительное сохранение актуальности.Изменились некоторые из системных требований:
- минимально PHP 7.2, рекомендуется PHP 7.4 (версии, начиная с 7.0, также будут работать, но не смогут обновляться);
- минимально SQLite 3.7.11, рекомендуется 3.8.8+.
Версия 1.1.0 была доступна в качестве тестового обновления с 16 августа, а релиз стабильной версии состоялся 7-го сентября.Установка “с нуля”Для того, чтобы установить “чистый” October версии 1.1.x воспользуйтесь установкой с помощью Composer:
- Выполнить команду composer create-project october/october ..
- Открыть файл config/cms.phpи активировать настройку disableCoreUpdates, которая отключит обновления ядра CMS через шлюз October: 'disableCoreUpdates' => true,.
- Завершить установку с помощью терминала, выполнив команду php artisan october:install.
Корректно установленный October версии 1.1.x в настройках админки не будет отображать свой номер.
Если после установки вы попытаетесь обновить ядро из админки не включив настройку disableCoreUpdates, то на неопределённый срок получите следующую картину.
ОбновлениеДля того, чтобы обновить существующую установку October до ветки 1.1.x она должна быть изначально установленной с помощью Composer. Если это не так, то наиболее беспроблемное обновление будет выглядеть следующим образом (при наличии October уже установленной с помощью Composer сразу переходите к шагу 6):
- Установить в отдельную директорию October CMS версии 1.469 с помощью команды composer create-project october/october . "1.0.469".
- Открыть файл config/cms.phpи активировать настройку disableCoreUpdates, которая отключит обновления ядра CMS через шлюз October: 'disableCoreUpdates' => true,.
- Скопировать папки pluginsи themesв эту директорию.
- Применить миграции с помощью команды php artisan october:up.
- Разрешить возникшие конфликты.
- Поднять версии зависимостей в composer.json:*
-
"repositories": [
{
"type":"vcs",
"url":"https://github.com/octoberrain/composer-merge-plugin"
}
],
"require": {
"php": "^7.2",
"october/rain": "~1.1",
"october/system": "~1.1",
"october/backend": "~1.1",
"october/cms": "~1.1",
"laravel/framework": "~6.0",
"wikimedia/composer-merge-plugin": "dev-feature/composer-v2 as 1.5.0"
},
"config": {
"preferred-install": "dist",
"platform": {
"php": "7.2.9"
}
},
- Если вы начинали с шага 6, следует убедиться, что шаг 2 выполнен.
- Обновить зависимости с помощью команды composer update.
- Применить миграции с помощью команды php artisan october:up.
*Обратите внимание на нестандартный wikimedia/composer-merge-plugin, это форк Люка Тауэрса (одного из основных разработчиков ядра October) для обеспечения совместимости с Composer v2.Поздравляем, теперь вам доступны самые последние возможности платформы October CMS!Затронутая функциональностьКак мы уже отмечали, переход на Laravel 6 глубоко затронул функциональность October CMS. Поэтому, некоторые части вашего кода также могут потребовать изменений:
- Configuration files (/config/*.php)
- Environment variables (.env files)
- Server configuration (.htaccess files)
- Any packages made for Laravel
- Laravel package auto-discovery
- Interacting with Cache repositories
- String-based primary keys in models
- Use of $guarded in models
- Wildcard event listeners
- Catch-all routing
- Using Carbon directly
- Using Jenssegers\Date directly
- Using Symfony directly
- Using League\Csv directly
- Unit Testing
Также не забудьте обновить все установленные плагины до актуальных версий. Например, если у вас установлен RainLab.Translate, убедитесь, что его версия не ниже 1.7.3. С более ранними версиями вы столкнетесь с проблемой его использования.Новая система версионированияПомимо поддержки Laravel 6, October перешла на новую, более подходящую для текущих реалий разработки этой CMS. Основное изменение — теперь в номер версии будет включён номер минорного релиза.October CMS по-прежнему в «вечнозеленой» стадии, где версии различаются лишь номерами сборок. Это является результатом соглашения команды разработчиков, принятого с самого первого дня работы над проектом.Предыдущая LTS-версия Laravel имела достаточно долгий срок жизни. На данный момент её использует множество сайтов. Поэтому необходим способ и далее предоставлять обновления безопасности для этих веб-сайтов, особенно если они не могут обновиться до последней версии CMS или PHP. В итоге October CMS перешла к новой схеме управления версиями. В которой мажорный номер (v1) останется равным 1, чтобы отразить приверженность стабильности обновлений. Минорный номер (v1.x) теперь будет увеличиваться при выпуске обновлений, которые могут повлиять на зависимости (например, обновления фреймворка Laravel). Номер патча (v1.0.x) будет по-прежнему отражать текущие обновления или сборки, но будет сбрасываться каждый раз при изменении дополнительной версии. Теперь будет три основных типа релизов этой CMS:
- Develop — версия, находящаяся в активной разработке;
- 1.0 — стабильный билд на базе Laravel 5.5 (ранее эта была ветка master);
- 1.1 — стабильный билд на базе Laravel 6.
Напоминаем, October CMS все ещё находится в «вечнозеленой» стадии. Поэтому даже после выхода минорного обновления все предыдущие версии лишаются обновлений, за исключением патчей критических уязвимостей безопасности. Так что мы рекомендуем всегда поддерживать вашу October CMS в наиболее актуальном состоянии.
===========
Источник:
habr.com
===========
Похожие новости:
- [PHP, Zend Framework] Простой Telegram бот, который задаёт 1 вопрос
- [PHP, Совершенный код] Мнение о PSR-1: Базовый стандарт написания кода
- [Разработка веб-сайтов, PHP, Laravel] Laravel–Дайджест (23 ноября – 6 декабря 2020)
- [PHP] Улучшаем архитектуру: Инверсия и внедрение зависимостей, наследование и композиция
- [PHP, Проектирование и рефакторинг, Yii] SOLID на практике. Принцип открытости-закрытости и ActiveQuery Yii2
- [PHP] Приглашаю все на вебинар по вопросам безопасности PHP
- [Информационная безопасность, PHP] Почему я не люблю PHP
- [Программирование микроконтроллеров] Полноценный трехпортовый USB-Serial адаптер на STM32 Blue Pill (STM32F103C8T6)
- [Разработка веб-сайтов, PHP, Программирование, Проектирование и рефакторинг] Сейчас я буду убеждать вас использовать статический анализ в PHP
- [Разработка веб-сайтов, Разработка под e-commerce, Управление e-commerce, Бизнес-модели, IT-компании] Архитектура маркетплейса
Теги для поиска: #_cms, #_php, #_laravel, #_october_cms, #_laravel, #_cms, #_cms, #_php, #_laravel
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 15:45
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Продолжаем рассматривать October CMS, вокруг которой мы в LOVATA построили разработку веб-проектов и в особенности интернет-магазинов. Сегодня мы подготовили для вас инструкцию по обновлению вашей текущей установки October до долгожданной версии 1.1.x с Laravel 6 “под капотом”.Прошло больше года с момента выхода шестой версии фреймворка Laravel. А некоторое время назад и October CMS, для которой мы разработали e-commerce-платформу Shopaholic, выпустила долгожданный релиз под номером 1.1.0 с поддержкой Laravel 6. Как вы, возможно, заметили, принцип нумерации версий тоже изменился, он стал лучше отражать текущее положение вещей.Предвосхищая возможные комментарии по поводу актуальной мажорной версии Laravel, поясняю, что до сих пор October CMS базировался исключительно на LTS-релизах. Это кажется разумным выбором в свете того факта, что ранее имели место случаи сломанной обратной совместимости даже при повышении очередной минорной версии фреймворка.Переход на Laravel 6Общие сведенияЯдро October претерпело много серьёзных изменений, что и стало причиной достаточно длительного ожидания. При этом релиз Laravel 6 отмечен как LTS (Long Term Support), что означает увеличенный жизненный цикл и длительное сохранение актуальности.Изменились некоторые из системных требований:
Если после установки вы попытаетесь обновить ядро из админки не включив настройку disableCoreUpdates, то на неопределённый срок получите следующую картину. ОбновлениеДля того, чтобы обновить существующую установку October до ветки 1.1.x она должна быть изначально установленной с помощью Composer. Если это не так, то наиболее беспроблемное обновление будет выглядеть следующим образом (при наличии October уже установленной с помощью Composer сразу переходите к шагу 6):
=========== Источник: habr.com =========== Похожие новости:
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 15:45
Часовой пояс: UTC + 5