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

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

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

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

В демо веб-приложения добавили поддержку symfony/console версии ^5.4, так с версии 6.1.1 symfony/console требует PHP 8.1, а приложение работает и на 8.0 и на 8.1 (PR).
⚡️ #yiisoftDb #yiisoftDbSqlite #yiisoftDbMssql #yiisoftDbMysql #yiisoftDbOracle #yiisoftDbPgsql #yiisoftActiveRecord

В Yii DB у нескольких методов изменили тип возвращаемого значения (PR):

CommandInterface::queryColumn(): array|falsearray

CommandInterface::queryOne(): array|false?array

QueryInterface::one(): mixedarray|object|null

При дальнейшем рефакторинге в QueryInterface::one() планируется изменить тип на ?array.

Соответствующие изменения внесены в пакеты:

- Yii DB SQLite Extension (PR)
- Yii DB MSSQL Server Extension (PR)
- Yii DB MySQL Extension (PR)
- Yii DB Oracle Extension (PR)
- Yii DB PostgreSQL Extension (PR)
- Yii Active Record (PR)
⚡️ #yiisoftValidator

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

• Добавили новые правила Equal, NotEqual, LessThan, LessThanOrEqual, GreaterThan и GreaterThanOrEqual, которые являются частными случаями правила CompareTo (PR).

• Интерфейс RulesProviderInterface теперь НЕ расширяет DataSetInterface (PR).

• Метод RuleHandlerInterface::validate пометили как внутренний и добавили соответствующее предупреждение в документацию (PR).
👍3
⚡️ #yiisoftValidator

В Yii Validator исправили ошибку в одном из примеров в readme (PR).
⚡️ #yiisoftSession

В Yii Session повысили уровень Psalm до 1 (PR).
👍3
⚡️ #yiisoftYiiDebug

В Yii Debug добавлена поддержка Yii View версии ^5.0 (PR).
👍1
⚡️ #yiisoftFiles

В Yii Files в методе для очистки директории FileHelper::clearDirectory() добавили опцию filter, с помощью которой можно передать объект, реализующий PathMatcherInterface (PR, PR).
👍1
⚡️ #yiisoftYiiDebugViewer

В Yii Debug Viewer добавили поддержку Yii View версии ^5.0 (PR).
⚡️ #yiisoftInjector

В Yii Injector добавили тестов с использованием перечислений (PR).
⚡️ #yiisoftYiiDocker

В Yii Docker Image добавили PHP-расширение sockets (PR).
⚡️ #yiisoftValidator

В Yii Validator сделали рефакторинг интерфейсов (PR):

• переименовали интерфейс ParametrizedRuleInterface в SerializableRuleInterface;

RuleHandlerInterface перенесли на уровень выше в пространство имён Yiisoft\Validator.
#yiisoftProxy #ПатчРелиз #Релиз

🎁 Yii Proxy 1.0.2

• Исправлено: в некоторых случаях некорректно генерировались модификаторы классов и методов (PR).
⚡️ #yiisoftAssets

В Yii Assets включили CI-процесс GitHub для проверки обратной совместимости изменений (PR).
#yiisoftAssets #МинорныйРелиз #Релиз

🎁 Yii Assets 2.1.0

• Минимальная версия PHP поднята до ^8.0.

• Изменена логика генерации хэша при публикации ресурсов, теперь к времени последнего изменения ещё добавляется количество файлов.
#yiisoftLogTargetFile #МажорныйРелиз #Релиз

🎁 Yii Logging File Target 2.0.0

• Удалена опция rotateByCopy, ротация теперь всегда происходит с помощью переименования файлов (PR).

• Добавлена поддержка Yii Files версии ^2.0.

• Явно указана зависимость ext-zlib.
👍2
#yiisoftInjector #МинорныйРелиз #Релиз

🎁 Yii Injector 1.1.0

• Добавлена поддержка аргументов с пересечением типов, появившемся в PHP 8.1.
⚡️ #yiisoftYiiDevTool

В Yii Development Tool исправили ошибку: при релизе пакете с версией отличной от той, которая сейчас в разработке (например, в change log строка 1.1.0 under development, а релизим 2.0.0) , не сортировались строки в change log (PR).
⚡️ #yiisoftValidator

Продолжается активная работа над Yii Validator.

• Контекст при обработке правил (метод RuleHandlerInterface::validate()) сделали обязательным (PR). Подразумевается, что обработчики правил никогда не используются напрямую, только через валидатор.

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

• Изменили работу с атрибутами (PR):
- заменили атрибуты HasMany и HasOne на Embedded;
- разрешили использовать несколько одинаковых атрибутов (добавили Attribute::IS_REPEATABLE).
👍4
⚡️ #yiisoftDemo

В демо веб-приложения добавили пример использования Yii Rate Limiter Middleware (PR).
👍3
⚡️ #yiisoftYiiConsole

В Yii Console добавили возможность конфигурации команды serve (адрес, порт, корневая директория и точка входа) и добавили раздел с описанием этой команды в readme (PR).
👍3🥰1
⚡️ #yiisoftYiiDebug #yiisoftYiiDebugViewer

Сделали рефакторинг в Yii Debug (PR):

- сгруппировали классы *Proxy и *Collector в одном пространстве имён;

- удалили неиспользуемые интерфейсы EventCollectorInterface, LogCollectorInterface, RouterCollectorInterface и ServiceCollectorInterface;

- переработали структуру статистических данных (сгруппировали их), которые возвращаются методом getIndexData в коллекторах.

Соответствующие изменения сделаны в Yii Debug Viewer (PR).
👍2