Laravel World

  1. Новые команды для шифрования файлов среды

    Новые команды для шифрования файлов среды

    В Laravel 9.32 добавлены две новые artisan-команды env:encrypt и env:decrypt.

    Эти команды позволяют безопасно хранить шифрованную копию env-файла вашего приложения в системе управления версиями и использовать его для развертывания и передачи разработчикам.

    https://blog.laravel.com/laravel-new-environment-encryption-commands

    • 👍57
    • 👎6
  2. Настройка строгого Eloquent-режима в Laravel 9.35

    Настройка строгого Eloquent-режима в Laravel 9.35

    Теперь есть несколько методов, позволяющих настроить «строгость» поведения Eloquent.

    — preventLazyLoading для отключения ленивой загрузки.

    — preventSilentlyDiscardingAttributes — выбрасывает исключение при попытки заполнить незаполняемый атрибут.

    — preventAccessingMissingAttributes — выбрасывает исключение при попытке получить доступ к атрибуту, который не был извлечен из базы или просто не существует.

    Одновременно включить все три метода можно через метод shouldBeStrict.

    https://laravel.com/docs/9.x/eloquent#configuring-eloquent-strictness

    • 👍74
    • ❤️2
  3. В PHP 8.3 появится новая функция json_validate, которая будет определять является ли указанная строка действительно json.

    В PHP 8.3 появится новая функция json_validate, которая будет определять является ли указанная строка действительно json.

    • 👍215
    • 👎6
  4. TLDR — плагин для PhpStorm, который подключает искусственный интеллект и тот на чистом английском языке объясняет, что делает ваш код.

    TLDR — плагин для PhpStorm, который подключает искусственный интеллект и тот на чистом английском языке объясняет, что делает ваш код.
    https://plugins.jetbrains.com/plugin/20050-tldr
    This media is not supported in your browser
    VIEW IN TELEGRAM

    • 👍141
    • 👎13
  5. Тейлор предлагает обсудить альтернативный синтаксис для отправки почты. Текущий build-метод будет сохранен в любом случае.

    Тейлор предлагает обсудить альтернативный синтаксис для отправки почты. Текущий build-метод будет сохранен в любом случае.
    https://github.com/laravel/framework/pull/44462

    • 👍65
  6. Перестаньте использовать SQLite в Unit-тестах

    Перестаньте использовать SQLite в Unit-тестах

    Использование Sqlite в Laravel (или любых других PHP приложениях) для Unit-тестирования может привести к false positive результатам тестов. Тот код который пройдет тесты, не заработает после переезда в production и использования других БД, например, MySQL. Вместо этого разверните тестовую БД с использованием той же технологии и движка, которые будут использоваться вашим приложением в production.

    https://habr.com/ru/post/691838/ Перестаньте использовать SQLite в Unit-тестах

    • 👍95
    • 👎4
  7. С помощью триггеров удобно вести статистику по таблицам базы данных. Это позволит избежать дорогих агрегирующих запросов.

    С помощью триггеров удобно вести статистику по таблицам базы данных. Это позволит избежать дорогих агрегирующих запросов.

    Для уменьшения счетчика можно использовать метод afterDelete.

    • 👎76
    • 👍53
  8. Релиз Laravel 9.34

    Релиз Laravel 9.34
    https://github.com/laravel/framework/releases/tag/v9.34.0

    также зарелизены:
    Laravel 8.83.25
    Fortify 1.13.4
    Octane 1.3.3
    Sail 1.16.2
    Scout 9.4.12 Release v9.34.0 · laravel/framework

    • 👍42
  9. Laravel 10

    Laravel 10 планируется выпустить 7 февраля 2023 года. Посмотрим, что на данный момент о ней известно:

    — Фреймворк будет требовать PHP 8.1.

    — Будет удалён метод dispatchNow(). Его необходимо заменить на dispatchSync(). Также будут удалены ещё несколько устаревших методов.

    — Создание кастомных правил командой make:rule будет по дефолту делать их invokable.

    Подробнее об изменениях: https://benjamincrozat.com/what-is-new-laravel-10

    • 👍66
    • ❤️1
  10. В Laravel 9.32 появился хелпер Benchmark, который позволяет быстро протестировать производительность кода.

    В Laravel 9.32 появился хелпер Benchmark, который позволяет быстро протестировать производительность кода.

    https://laravel.com/docs/9.x/helpers#benchmarking

    • 👍223
    • 👎1
  11. Laravel Precognition —

    Laravel Precognition — Tim MacDonald делает интересную штуку для Laravel 9.
    Звучит, конечно громко: «Предвидение», но на деле удобная фича для быстрой проверки форм и контента.

    https://github.com/laravel/docs/blob/890e72e3c8e6b0c7b6c6159b708de447dd6c50eb/precognition.md

    • 👍65
    • 👎1
  12. В свежих Laravel 9.32 и 8.83.24 исправлена потенциальная уязвимость логина перед атакой Timeless Timing Attack (новая атака по времени, когда по разнице времени ответов раскрывают существующих пользователей).

    В свежих Laravel 9.32 и 8.83.24 исправлена потенциальная уязвимость логина перед атакой Timeless Timing Attack (новая атака по времени, когда по разнице времени ответов раскрывают существующих пользователей).

    https://github.com/laravel/framework/pull/44069

    • 👍90
    • 👎1
  13. Судя по количеству лайков, вам не особо интересно читать про выход новых версий Laravel. Оно и понятно — релизы стабильно выходят по средам, кому интересно — сам зайдёт на гитхаб. И возникает вопрос: нам продолжать публиковать еженедельные релизы?
    Anonymous Poll
    71%
    Да
    13%
    Нет
    17%
    Всё равно…

    • 👍114
    • 👎2