⚡️ #yiisoftHtml
В пакете Yii HTML добавлен класс для тега
Например:
В пакете 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, возникающая при указании лимита (
Исправлена ошибка в пакете Yii DB Migration, возникающая при указании лимита (
--limit
) в командах migrate/down
, migrate/redo
и migrate/history
(PR).🎁 #yiisoftHtml #Релиз #МинорныйРелиз
Минорный релиз Yii HTML 2.1.0
• Добавлен класс для тега
Минорный релиз Yii HTML 2.1.0
• Добавлен класс для тега
<noscript>
и возможность добавить <noscript>
к тегу <script>
.⚡️ #yiisoftFactory
Сделали очередной рефакторинг в Yii Factory (
Сделали очередной рефакторинг в Yii Factory (
DependencyResolver
переделан в FactoryContainer
) и добавили тестов (PR).⚡️ #yiisoftYiiDbMigration
Улучшения консольной команды
- для опционального параметра
- добавлен флаг
Улучшения консольной команды
migrate/down
в пакете Yii DB Migration (PR):- для опционального параметра
--limit
задано значение по умолчанию 1
;- добавлен флаг
--all
, включение которого приводит к откату всех миграций.⚡️ #yiisoftDefinitions
В пакете Yii Definitions добавлена документация и описания в doc-блоки в коде (PR).
В пакете Yii Definitions добавлена документация и описания в doc-блоки в коде (PR).
⚡️ #yiisoftInjector
В пакете Yii Injector у метода
В пакете Yii Injector у метода
Injector::make()
объявлен тип возвращаемого значения object
и добавлены psalm-аннотации, позволяющие анализатору понять экземпляром какого конкретно класса является возвращаемый объект (PR).⚡️ #yiisoftForm #yiisoftYiIBulma #yiisoftYiiBootstrap5 #yiisoftDemo
Выполнен рефакторинг всех виджетов в пакете Yii Form (PR).
• Серьёзно подчищен, а в некоторых местах и переписан, код всего пакета.
• Для генерации HTML-кода используются теги из пакета Yii HTML.
• Подчищены тесты. Для тестирования используются вспомогательные классы из Yii Test Support.
• Исправлены ошибки psalm, уровень psalm повышен до 1.
• MSI увеличен до 89,1%.
Для адаптации к этим изменениям внесены соответствующие правки в конфигурации Yii Bulma (PR) и Yii Bootstrap 5 (PR), а также в в демо веб-приложения (PR).
Выполнен рефакторинг всех виджетов в пакете Yii Form (PR).
• Серьёзно подчищен, а в некоторых местах и переписан, код всего пакета.
• Для генерации HTML-кода используются теги из пакета Yii HTML.
• Подчищены тесты. Для тестирования используются вспомогательные классы из Yii Test Support.
• Исправлены ошибки psalm, уровень psalm повышен до 1.
• MSI увеличен до 89,1%.
Для адаптации к этим изменениям внесены соответствующие правки в конфигурации Yii Bulma (PR) и Yii Bootstrap 5 (PR), а также в в демо веб-приложения (PR).
⚡️ #yiisoftYiiCycle
В пакете Yii Cycle добавлена ветка
Установка:
В пакете Yii Cycle добавлена ветка
2.0
, работающая с Cycle ORM версии 2, которая сейчас находится в стадии активной разработки (PR).Установка:
composer require yiisoft/yii-cycle "2.0.x-dev"
Информацию на русском о новой версии Cycle ORM можно почитать в gist о Cycle ORM v2.⚡️ #yiisoftRouter
В классе
В классе
CurrentRoute
(пакет Yii Router) добавлен метод getName()
, возвращающий имя текущего роута (PR).⚡️#yiisoftYiiConsole
В консоли Yii Console добавлена поддержка алиасов для команд (PR).
Теперь имя и алиасы команды задаются в конфигурации пакета, а имя и алиасы из класса команды игнорируются. В том числе это позволяет удобно указать в приложении свои имя и алиасы для команд, предоставляемых пакетами.
Имя и алиасы задаются в виде строки, разделённой вертикальной чертой
Примеры:
В консоли Yii Console добавлена поддержка алиасов для команд (PR).
Теперь имя и алиасы команды задаются в конфигурации пакета, а имя и алиасы из класса команды игнорируются. В том числе это позволяет удобно указать в приложении свои имя и алиасы для команд, предоставляемых пакетами.
Имя и алиасы задаются в виде строки, разделённой вертикальной чертой
|
. Если строка начинается с вертикальной черты, то команда помечается как скрытая, то есть она не выводится в списке команд, но может быть вызвана.Примеры:
// Имя `hello`; алиасов нет
'hello' => HelloCommand::class,
// Имя `start`; алиасы `run`, `s`, `r`
'start|run|s|r' => StartCommand::class,
// Скрытая команда; имя `hack`; алиас `h`
'|hack|h' => HackCommand::class,
⚡️ #yiisoftYiiDbMigration
Выполнен рефакторинг в пакете Yii DB Migration (PR):
- удалён класс
- весь вывод в консоль теперь идёт через
Выполнен рефакторинг в пакете Yii DB Migration (PR):
- удалён класс
ConsoleHelper
;- весь вывод в консоль теперь идёт через
OutputInterface
, передаваемый в команду (ранее часть вывода шла через создаваемый в ConsoleHelper
объект, реализующий OutputInterface
).⚡️ #yiisoftApp
В шаблоне веб-приложения адаптировали пример консольной команды к «ленивой» загрузке команд в консоли (PR).
В шаблоне веб-приложения адаптировали пример консольной команды к «ленивой» загрузке команд в консоли (PR).
⚡️ #yiisoftYiiDbMigration
В пакете Yii DB Migration исправлена ошибка в команде
В пакете Yii DB Migration исправлена ошибка в команде
database/list
(PR): если база данных содержит несколько схем (например, в PostgreSQL), то команда завершалась с ошибкой.⚡️ #yiisoftFiles
В пакете Yii Files в readme улучшен пример с выборкой файлов по фильтру и доработан doc-блок метода
Спасибо Tomasz Kane за PR 👍
В пакете Yii Files в readme улучшен пример с выборкой файлов по фильтру и доработан doc-блок метода
PathMatcher::except()
(PR).Спасибо Tomasz Kane за PR 👍
✨ #yiisoftDataDb
Создан новый пакет Yii Data DB, который будет содержать реализации интерфейсов из Yii Data для работы с базами данных.
Создан новый пакет Yii Data DB, который будет содержать реализации интерфейсов из Yii Data для работы с базами данных.
⚡️ #yiisoftApp
В шаблоне веб-приложения вместо глобальных констант (
В шаблоне веб-приложения вместо глобальных констант (
YII_ENV
,YII_DEBUG
, …) теперь используются переменные окружения с помощью пакета vlucas/phpdotenv
(PR).⚡️ #yiisoftDb #yiisoftDbMysql #yiisoftDbSqlite #yiisoftDbMssql #yiisoftDbPgsql #yiisoftDbOracle
Выполнен рефакторинг и внесли несколько улучшений в пакет Yii DB (PR, PR):
• убрали зависимость от фабрики Yii Factory;
• логгер и профайлер теперь опциональны;
• в интерфейсе
• для тестирования расширений добавлен трейт
Расширения под конкретные БД адаптированы к этим изменениям:
- Yii DB MySQL Extension (PR, PR)
- Yii DB SQLite Extension (PR, PR)
- Yii DB MSSQL Server Extension (PR)
- Yii DB PostgreSQL Extension (PR)
- Yii DB Oracle Extension (PR)
Выполнен рефакторинг и внесли несколько улучшений в пакет Yii DB (PR, PR):
• убрали зависимость от фабрики Yii Factory;
• логгер и профайлер теперь опциональны;
• в интерфейсе
QueryInterface
добавлен метод select()
;• для тестирования расширений добавлен трейт
TestTrait
.Расширения под конкретные БД адаптированы к этим изменениям:
- Yii DB MySQL Extension (PR, PR)
- Yii DB SQLite Extension (PR, PR)
- Yii DB MSSQL Server Extension (PR)
- Yii DB PostgreSQL Extension (PR)
- Yii DB Oracle Extension (PR)
⚡️ #yiisoftYiiDbMigration
Улучшили конфигурация пакета Yii DB Migration (PR). Теперь класс
Улучшили конфигурация пакета Yii DB Migration (PR). Теперь класс
View
, необходимый для работы сервиса генерации миграции, создаётся в самом сервисе, а не запрашивается из контейнера.⚡️ #yiisoftDataDb
В пакете Yii Data DB добавлен
Спасибо @Gerych1984 за PR 👍
В пакете Yii Data DB добавлен
QueryDataReader
, реализующий DataReaderInterface
из пакета Yii Data (PR, PR, PR).Спасибо @Gerych1984 за PR 👍