Недавно упоминал, что работаю над CRMкой для турагентств и турагентов, которую написал давно. Соответственно, Laravel уже очень старый. Я писал, что 6, а при проверке оказалось, что вообще 5, и это несколько сковывает мои возможности. В общем, решил осовременить систему, чтобы проще было работать и интегрировать более современные библиотеки (типа Horizon например). Поставил, короче, задачу обновиться за выходные. Ну и делюсь с вами полученным опытом.
А то в чатах иногда пишут, что практических примеров кодинга с ИИ маловато. Вот — самый настоящий практический пример.
Без лишних прелюдий, дано:
- Legacy-код на Laravel 5;
- набор из 580 тестов (код разрабатывался по TDD);
- Cursor AI бесплатная версия — чтобы было видно, что с ней, на автовыборе модели, тоже можно.
Нужно: обновить код до Laravel 12 так, чтобы он не сломался.
TL/DR если не хочется читать технические подробности:
- ИИшечка помогает, но есть нюансы (внутри заметки).
- Без ИИшечки я бы ещё очень долго это откладывал.
- А без пакета заботливо написанных при разработке тестов скорее всего вообще не стал бы.
- Задача была выполнена.
- Суммарное время выполнения составило около 8-9 часов.
Итак, нам нужно обновить Laravel 5 до 12. Делаем мы это по шагам, то есть так: 5 → 6 → 7 → 8 → 9 → 10 → 11 → 12, всего 7 обновлений. Для каждого разработчики Ларавела заботливо написали roadmap по апгрейду. Вот например для апгрейда до Laravel 6: https://laravel.com/docs/6.x/upgrade


