Выход версии Laravel 10.5
Что нового в версии Laravel 10.5

Старт! Честный VDS/VPS, на котором «Лунная База» живет уже 20+ лет

Задумываетесь о том, чтобы поднять свой pet-проект, сайт клиента или настроить окружение для разработки? Уже пора подумать, где арендовать железо.

Лунная База хостится на FirstVDS более 20 лет. Мыслей о том, чтобы перебраться на другой хостинг, не было ни разу (хотя опыт работы с другими вариантами, конечно, есть).

Бывали разные ситуации, но они бывают на любом железе. Главное, что нужно понять: здесь нет маркетинговой шелухи и сказок про «мы всё сделаем за вас». Если вы берете VDS — вам дают полный root, возможность накатить любую ОС и не лезут в ваши конфиги.

Если в саппорт написать с вопросом по вашему коду и получить ответ: «Читайте документацию и разбирайтесь сами» или «Обратитесь к профильному специалисту» — это не повод обижаться. Это повод углубить свои знания в DevOps и сайтостроении! Бегите от тех, кто пообещает: «Мы всё чиним и настраиваем абсолютно бесплатно!». Никто никогда не работает «по доброте душевной» в ущерб себе, а бесплатный сыр в администрировании обычно заканчивается сломанной базой данных.

Что по факту: Гибкое масштабирование ядер и RAM, экономия по сравнению с физическими серверами и адекватная панель ispmanager, если она вам нужна.



Что нового в версии Laravel 10.5

Команда Laravel выпустила 31 марта 2023 года версию 10.5 фреймворка Laravel с несколькими новыми функциями и обновлениями. Среди них флаг чувствительности к регистру для Stringable replace, поддержка передачи пустых колонок в метод insertUsing конструктора базы данных, а также новый метод подключения к базе данных selectResultsets.

Кроме того, релиз включает исправления ошибок и изменения, такие как улучшение обработки пустых массивов в операциях с несколькими ключами для DynamoDbStore и удаление дублирующихся ограничений в отношениях с помощью one().

Флаг чувствительности к регистру для строковой замены.

Maarten Paauw внес флаг чувствительности к регистру для замены строк:

// Нечувствительный к регистру строковый пример
// foo/foo/foo
Str::of('x/x/x')->replace('X', 'foo', false);
 
// Без учета регистра
// foo bar laravel
Str::replace('baz', 'laravel', 'foo bar Baz', false);
 
// По умолчанию чувствительный к регистру не заменит `Baz` на `laravel`.
Str::replace('baz', 'laravel', 'foo bar Baz'); // foo bar Baz

Разрешение insertUsing иметь пустые столбцы.

Jonny Nott добавил поддержку базы данных для передачи пустых столбцов или ['*'] для вставки всех столбцов из источника в место назначения:

$builder->from('table1')->insertUsing(
    [],
    function (Builder $query) {
        $query->from('table2')->where('foreign_id', '=', 5);
    }
);
 
// insert into "table1" select * from "table2" where "foreign_id" = ?'

Метод selectResultsets базы данных.

Istvan Palinkas предоставил метод подключения к базе данных, который запускает оператор выборки в базе данных и возвращает все полученные результаты:

[
    $user_params,
    $user_notifications
] = DB::selectResultsets("CALL get_user_params_and_notifications(?)", Auth::id());

Примечания к выпуску Laravel 10.5

Полный список новых функций и обновлений можно посмотреть ниже, а разницу между версиями 10.4.0 и 10.5.1 - на GitHub. Следующие примечания к выпуску взяты непосредственно из журнала изменений.

Список изменений в Laravel 10.5:

v10.5.1

Добавлено

  • Добавлены методы для определения того, загружен ли ресурс API в pivot (#46555)
  • Добавлен флаг caseSensitive для функции Stringable replace (#46578)
  • Разрешить insert..select (insertUsing()) иметь пустые $columns (#46605, 399bff9)
  • Добавлена функция Illuminate/Database/Connection::selectResultSets() (#46592)

Изменено

  • Проверьте, что модель pivot имеет ранее определенные значения (#46559)
  • Переместите SetUniqueIds так, чтобы он выполнялся до события создания (#46622)

v10.5.0

Добавлено

  • Добавлена функция Illuminate/Cache/CacheManager::setApplication() (#46594)

Исправлено

  • Исправление бесконечной загрузки в списке партий в Horizon (#46536)
  • Исправление запросов whereNull с необработанными выражениями для грамматики MySql (#46538)
  • Исправление метода getDirty при использовании AsEnumArrayObject / AsEnumCollection (#46561)

Изменено

  • Пропустить Illuminate/Support/Reflector::isParameterBackedEnumWithStringBackingType для не ReflectionNamedType (#46511)
  • Замена устаревшего создания DBAL Comparator на компаратор с учетом схемы (#46517)
  • Добавлен метод Storage::json() для чтения и декодирования json-файла (#46548)
  • Принудительное приведение json декодированных failed_job_ids к массиву в DatabaseBatchRepository (#46581)
  • Обработка пустых массивов для многоключевых операций DynamoDbStore (#46579)
  • Перестали дважды добавлять ограничения для отношений Многие к Одному через one() (#46575)
  • Разрешение переопределения итогового значения в Builder paginate() (#46415)
  • Добавление возможности установки пользовательской функции on_stats для Http Facade (#46569)

Перевод с английского официальных новостей Laravel:
https://laravel-news.com/laravel-10-5-0

Самый честный хостинг за 20+ лет существования Лунной Базы

Задумываешься о том, чтобы поднять свой сайт в Интернете? Уже пора подумать о том, какой хостинг выбрать?

Лунная База хостится 20+ лет на firstDVS. При этом, мыслей о том, чтобы перебраться на другой хостинг не было. (Но, при этом есть опыт работы с другими вариантами.)

Бывали с firstDVS разные ситуации, но, они бывают на всех хостингах. Единственное, что тут важно понять, - это то, что никто ничего тебе не будет впаривать... Но, и работать за тебя тоже никто не станет. Если в саппорт ответили: «Читайте по ссылке и разбирайтесь сами...» или вообще «Обратитесь за помощью к специалисту», - это повод углубить свои знания в области сайтостроения, а не бежать к тем, что пообещают: «Мы всё чиним и всё делаем за своих клиентов абсолютно бесплатно!» Никто никогда ничего ни за кого "по доброте душевной" не делал, не делает и не будет делать!

Старт! Горячий старт на просторы интернета
Старт! Горячий старт на просторы интернета
Старт! Меню