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

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

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

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

В Yii Role-Based Access Control исправили опечатку в phpdoc (PR) и реализовали дружественное исключение для случая, когда роли по умолчанию не найдены (PR).
👍1
⚡️ #yiisoftFiles

В readme пакета Yii Files доработали описание работы с классами для сравнения путей (PR).
⚡️ #yiisoftDemo

В демо веб-приложения исправили ошибку, возникающую при получении ошибок из формы создания поста в блоге (PR).
#yiisoftTranslator #МинорныйРелиз #ПатчРелиз #Релиз

🎁 Yii Message Translator 1.1.0

• Добавлен SimpleMessageFormatter (взят и доработан из пакета Yii Translator Simple Message Formatter, который после этого переноса закрыт) с поддержкой модификатора plural по аналогии с intl (PR, PR).

🎁 Yii Message Translator 1.1.1

• Исправлена ошибка при использовании модификатора plural: теперь число не добавляется к выбранной строке (PR).
⚡️ #yiisoftValidator

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

• Заменили использование собственного форматера на прямое использование пакета Yii Message Translator (PR, PR, PR).

• В методе Validator::validate() добавили возможность использовать имя класса или объект, реализующий RulesProviderInterface, в качестве источника правил для валидации (PR).

• Сделали небольшой рефакторинг кода, получающего правила из атрибутов (PR).
#yiisoftRouter #МинорныйРелиз #Релиз

🎁 Yii Router 1.2.0

• Минимальная требуемая версия пакета yiisoft/middleware-dispatcher увеличена до ^3.0 (PR).
#yiisoftYiiHttp #ПатчРелиз #Релиз

🎁 Yii HTTP Application 1.0.1

• Минимальная требуемая версия пакета yiisoft/middleware-dispatcher увеличена до ^3.0 (PR).
⚡️ #yiisoftRequestModel

Yii Request Model адаптировали к последней версии yiisoft/middleware-dispatcher (PR).
⚡️ #yiisoftDemoApi #yiisoftAppApi

Демо API-приложения (PR) и шаблон API-приложения (PR) адаптировали к последним версиям yiisoft/router и yiisoft/middleware-dispatcher.
⚡️ #yiisoftValidator

Очередная порция улучшений в Yii Validator.

• В конфигурации пакета в случае, если контейнер не содержит реализацию MessageFormatterInterface, используется SimpleMessageFormatter (PR).

• Реализовали ленивое получение правил из атрибутов (PR).

• Добавили бенчмарк для валидатора (PR).
⚡️ #yiisoftDemoApi #yiisoftAppApi

В демо API-приложения (PR) и шаблоне API-приложения (PR) добавили в зависимости yiisoft/translator-formatter-intl и yiisoft/translator-message-php.
#yiisoftTranslatorMessagePhp #ПатчРелиз #Релиз

🎁 Yii Translator PHP Message Storage 1.0.5

• В конфигурации пакета алиас @message заменён на @messages (PR, PR, PR).
⚡️ #yiisoftYiiDebug

Yii Debug адаптировали к последним изменениям в Yii Queue (PR, PR).
⚡️ #yiisoftYiiDevTool

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

• Добавлена возможность указать владельца пакетов с помощью конфигурационного файла owner-packages.php, по умолчанию — yiisoft (PR).

• Добавлена команда github/forks для создания форков (PR).
👍2
⚡️ #yiisoftValidator

В Yii Validator при использовании правила Callback через атрибуты добавлена возможность указать в качестве функции обратного вызова метод проверяемого объекта (PR).

Пока доступны только публичные статичные методы. Например:

final class Author
{
#[Callback(method: 'validateName')]
private string $name;

public static function validateName(mixed $value, object $rule, ValidationContext $context): Result
{
$result = new Result();
if ($value !== 'foo') {
$result->addError('Value must be "foo"!');
}

return $result;
}
}
⚡️ #yiisoftYiiDebug

В пакете Yii Debug в отладочную информацию добавлены имена используемых сборщиков (PR).
⚡️ #yiisoftYiiMiddleware

В Yii Middleware поправили тесты, которые сломались после последних изменений в валидаторе (PR).
⚡️ #yiisoftYiiDebugApi

В Yii Debug API добавлена команда analyse/psalm для запуска статического анализатора psalm (PR).
#yiisoftCacheFile #ПатчРелиз #Релиз

🎁 Yii Cache File Handler 2.0.1

• Для установки прав при создании папки теперь используется функция chmod() (PR). Ранее на права создаваемой папки, которые указываются с помощью метода withDirectoryMode(), влияло значение umask (особенность работы функции mkdir).