Хроники Yii3
622 subscribers
43 photos
1.7K links
Описание процесса разработки фреймворка из первых рук 😎

Обсуждение:
https://yangx.top/yii3ru

Сводка по всем пакетам:
https://www.yiiframework.com/status/3.0

Поддержать разработчиков:
https://opencollective.com/yiisoft
加入频道
⚡️ #yiisoftYiiDocker

Несколько изменений в Yii Docker Image (PR):
- теперь используются стабильные версии PHP расширений;
- расширение "sockets" перенесено в dev-образ.
👍2
⚡️ #yiisoftYiiBootstrap5

В Yii Bootstrap 5 уровень psalm повышен до 2 (PR).
👍2
⚡️ #yiisoftYiiView

В пакете Yii View Extension добавили иммутабельный метод для установки локали ViewRenderer::withLocale() (PR) и исправили ошибки статического анализа (PR).
👍2
#yiisoftYiiSentry #ПервыйРелиз #МажорныйРелиз #Релиз

🎁 Yii Sentry 1.0.0

Добавили тестов (PR), исправили ошибку с дублированием ошибок, вызванных вручную (PR), и сделали первый стабильный релиз пакета Yii Sentry.

Yii Sentry — интеграция с Sentry, сервисом для сбора и агрегации логов, и другими совместимыми с Sentry API инструментами (например, GlitchTip).
🔥6
⚡️ #yiisoftValidator

В Yii Validator доработали phpdoc-аннотации, в некоторых случаях они были не достаточно полными (PR), а также сделали ещё несколько улучшений (PR):

• удалили трейт HandlerClassNameTrait, теперь во все правила самостоятельно реализуют метод getHandlerClassName();

• удалили абстрактный класс GroupRule в пользу правила Composite, у которого убрали финализацию.
👍3
⚡️ #yiisoftYiiDevTool

В Yii Development Tool добавлены команды enable и disable для включения и отключения пакетов соответственно (PR).
👍3
⚡️ #yiisoftForm

В модели формы FormModel из пакета Yii Form решили проблему с невозможностью установить значение null для nullable-атрибута (PR).
👍6
⚡️ #yiisoftYiiDebug

В Yii Debug исправили ошибку с некорректным пространством имён, которая закралась в предыдущем PR (PR).
👍2
#yiisoftMailer #МажорныйРелиз #Релиз

🎁 Yii Mailer Library 4.0.0

Привели change log к новому формату (PR) и сделали мажорный релиз пакета.

• Добавлен иммутабельный метод MailerInterface::withLocale(), устанавливающий локаль, которая используется для подключения представлений (PR).
👍5
#yiisoftYiiView #МажорныйРелиз #Релиз

🎁 Yii View Extension 4.0.0

• Добавлен иммутабельный метод для установки локали ViewRenderer::withLocale().
🔥3
⚡️ #yiisoftYiiDbMigration

В Yii DB Migration добавили простой класс для подключения PHP-шаблонов, что позволило отказаться от зависимости yiisoft/view и dev-зависимости yiisoft/event-dispatcher (PR).
👍3
🍤 #Задачи

Подборка несложных задач, которыми можно заняться, если есть время и желание 😉

yiisoft/files#49
В readme пакета Yii Files нужно добавить ссылку на описание синтаксиса шаблонов, используемых в PathPattern.

yiisoft/files#67
В Yii Files нужно добавить в readme информацию о методе FileHelper::copyFile().

yiisoft/error-handler#59
В Yii Error Handler в doc-блок конструктора мидлвари ExceptionResponder нужно добавить примеры параметра $exceptionMap.

yiisoft/validator#225
В правилах Yii Validator для метода getOptions() нужно добавить psalm-аннотацию с подробным описанием возвращаемого массива.

yisoft/log#83
В Yii Log нужно убрать из зависимостей ext-json, так как начиная с PHP 8 это расширение всегда входит в состав PHP.

yiisoft/rbac#121
Нужно заменить стандартное исключение в Yii RBAC, возникающее при попытке получения несуществующей роли по умолчанию, на дружественное (см. Yii Friendly Exception) с описанием проблемы и способом решения.
👍6
⚡️ #yiisoftYiiDebugViewer

Несколько улучшений в Yii Debug Viewer.

• Добавили возможность настроить ссылку на редактирование файла под любую IDE, а не только PhpStorm (PR).

• Обновили зависимости (PR):
- yiisoft/assets, ^2.0^2.1;
- yiisoft/view, ^4.0|^5.0^4.0|^5.0|^6.0.
А также актуализировали dev-зависимости.
👏3
⚡️ #yiisoftYiiDebug

В Yii Debug добавлена поддержка yiisoft/view версии ^6.0 (PR).
⚡️ #yiisoftMailerSymfony

В Yii Mailer Symfony Mailer Extension добавлена поддержка yiisoft/mailer версии ^4.0 (PR).
⚡️ #yiisoftTestSupport

Сделали небольшой рефакторинг класса MemorySimpleCache в Yii Test Support и повысили покрытие тестами до 100% (PR).
⚡️ #yiisoftValidator

В Yii Validator изменили сигнатуру метода Validator::validate() (PR):

public function validate($data, iterable $rules = null): Result

public function validate(mixed $data, ?iterable $rules = null): Result

Теперь для того, чтобы выполнить валидацию правилами, указанными в самом объекте $data, вторым параметром нужно передавать null вместо пустого массива.
👍2
#yiisoftMailerSymfony #МажорныйРелиз #Релиз

🎁 Yii Mailer Symfony Mailer Extension 2.0.0

Привели change log к новому формату (PR) и сделали мажорный релиз пакета.

• Требуемая версия yiisoft/mailer поднята до ^4.0 (PR).

• Добавлена поддержка 6й версии symfony/mailer.
#yiisoftLogTargetFile #ПатчРелиз #Релиз

🎁 Yii Logging File Target 2.0.1

• Исправлена ошибка в конфигурации пакета (PR).
⚡️ #yiisoftYiiDebug #yiisoftYiiDebugViewer

Yii Debug адаптировали к последним изменениям в валидаторе (PR), а в Yii Debug Viewer добавили панель с информацией о валидации (PR).
⚡️ #yiisoftDbMysql #yiisoftDbMssql #yiisoftDbPgsql #yiisoftDbOracle

Сделали небольшой рефакторинг в DB-пакетах: удалили в классе схемы метод resolveTableNames() в пользу уже существующего resolveTableName().

- Yii DB MySQL Extension (PR)
- Yii DB MSSQL Server Extension (PR)
- Yii DB PostgreSQL Extension (PR)
- Yii DB Oracle Extension (PR)
🤩2👍1