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

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

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

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

Обновление в клиенте для просмотра отладочной информации Yii Debug Viewer (PR).

• Добавлена панель с подробной информацией о запросе.

• Добавлена панель с информацией о задействованных в запросе мидлварях.

• Улучшения в JS.

• Удалены ненужные конфигурации.
⚡️ #yiisoftYiiDebugViewer

Для отображения JSON в Yii Debug Viewer теперь используется компонент не требующий jQuery (PR).
🎁 #yiisoftView #Релиз #МажорныйРелиз

Мажорный релиз Yii View 3.0.1

• Для сеттеров в классах View и WebView реализован текучий интерфейс.

• Удалены методы View::withAddedCommonParameters() и WebView::withAddedCommonParameters().

• В классах View и WebView переименованы методы:
setCommonParameters()setParameters()
setCommonParameter()
setParameter()
removeCommonParameter()
removeParameter()
getCommonParameter()
getParameter()
hasCommonParameter()
hasParameter()

• В параметрах конфигурации params.php параметр commonParameters переименован в parameters.

После мажорного релиза 3.0.0 выяснилось, что в конфигурации web.php допущена ошибка, поэтому пришлось сразу же сделать патч-релиз 3.0.1 с исправлением.
🎁 #yiisoftYiiView #Релиз #МажорныйРелиз

Мажорный релиз Yii View Extension 3.0.0

• Интерфейс для инъекций параметров в контент ContentParametersInjectionInterface заменён на интерфейс CommonParametersInjectionInterface, добавляющий параметры и в контент и в шаблон (layout).

• Исправлена ошибка: параметры, добавленные через инъекции, не передавались в субпредставления.
🎁 #yiisoftMailer #Релиз #ПатчРелиз

Патч-релиз Yii Mailer 3.0.1

Обновлена зависимость yiisoft/view до ^3.0.
⚡️ #yiisoftDefinitions #yiisoftFactory #yiisoftDi #yiisoftDb

В Yii Definitions удалён интерфейс DependencyResolverInterface, вместо него теперь используется PSR-интерфейс ContainerInterface (PR).

Соответствующие изменения внесены в пакеты, которые использовали DependencyResolverInterface:

- Yii Factory (PR),
- Yii Dependency Injection (PR),
- Yii DB (PR).
⚡️ #yiisoftYiiDataview

В виджетах из пакета Yii Data Widgets исправили проблему с генерацией ссылок в пагинации (использовался неактуальный способ получения текущего роута) и актуализировали тесты (PR).

Спасибо @Gerych1984 за обнаруженную ошибку 👍
🎁 #yiisoftYiiEvent #Релиз #ПатчРелиз

Патч-релиз Yii Event 1.0.2

В случаях, когда используется некорректный слушатель, выводится более подробное сообщение об ошибке.

Примеры новых сообщений:

"__invoke" method is not defined in "App\Events\MyEvent" class.

Failed to instantiate "App\Events\MyEvent" class.

Could not instantiate "App\Events\MyEvent" or "handle" method is not defined in this class.

"handle" method is not defined in "App\Events\MyEvent" class.

Listener must be a callable. Got App\Events\MyEvent.
⚡️ #yiisoftYiiDevTool

Исправлена ошибка в Yii Development Tool: при использовании команды composer/update вместо composer update выполнялось composer install (PR).
⚡️ #yiisoftApp

Небольшие улучшения в шаблоне веб-приложения (PR):
- значение константы YII_DEBUG получаемое из переменной окружения приводится к булеву типу;
- точки входа добавлены в статический анализ;
- мелкий рефакторинг и исправление ошибок psalm в точках входа.
⚡️ #yiisoftYiiDbMigration

Исправлена ошибка в консольной команде migrate/update пакета Yii DB Migration (PR).

В случае, когда нет миграций для выполнения, команда возвращала код 1 (UNSPECIFIED ERROR) вместо 0 (OK).
⚡️ #yiisoftDefinitions

Рефакторинг в пакете Yii Definitions: кэширование зависимостей перемещено из ArrayDefinitionBuilder в DefinitionExtractor (PR).
⚡️ #yiisoftYiiDataview

В виджете GridView из пакета Yii Data Widgets исправлен некорректный вывод тега <colgroup> (PR).

<colgroup> выводится в случаях, если у колонок есть опции, и содержит в себе теги <col>. До этого PR содержимое <colgroup> экранировалось, то есть вместо тегов <col ...> выводилось &lt;col ...&gt;. Cейчас экранирование отключили.
⚡️ #yiisoftHtml

В пакете Yii HTML добавлен класс для тега <noscript> и возможность добавить <noscript> к тегу <script> (PR).

Например:

// <script>...</script><noscript><img src="pixel.png"></noscript>
echo Script::tag()->content('...')->noscript(Img::tag()->src('pixel.png'));
⚡️ #yiisoftYiiDbMigration

Исправлена ошибка в пакете Yii DB Migration, возникающая при указании лимита (--limit) в командах migrate/down, migrate/redo и migrate/history (PR).
🎁 #yiisoftHtml #Релиз #МинорныйРелиз

Минорный релиз Yii HTML 2.1.0

• Добавлен класс для тега <noscript> и возможность добавить <noscript> к тегу <script>.
⚡️ #yiisoftFactory

Сделали очередной рефакторинг в Yii Factory (DependencyResolver переделан в FactoryContainer) и добавили тестов (PR).
⚡️ #yiisoftYiiDbMigration

Улучшения консольной команды migrate/down в пакете Yii DB Migration (PR):

- для опционального параметра --limit задано значение по умолчанию 1;

- добавлен флаг --all, включение которого приводит к откату всех миграций.
⚡️ #yiisoftDefinitions

В пакете Yii Definitions добавлена документация и описания в doc-блоки в коде (PR).
⚡️ #yiisoftInjector

В пакете Yii Injector у метода Injector::make() объявлен тип возвращаемого значения object и добавлены psalm-аннотации, позволяющие анализатору понять экземпляром какого конкретно класса является возвращаемый объект (PR).