#yiisoftLogTargetEmail #yiisoftLogTargetFile #yiisoftLogTargetSyslog #МажорныйРелиз #Релиз
🎁 Yii Logging Email Target 4.0
• Типы в конструкторе
• Добавлена поддержка
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовили Сергей Предводителев, Дмитрий Дерепко и Sanka.
🎁 Yii Logging File Target 3.0
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовили Сергей Предводителев и Дмитрий Дерепко.
🎁 Yii Logging Syslog Target 2.0
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовили Сергей Предводителев, Дмитрий Дерепко и Sanka.
🎁 Yii Logging Email Target 4.0
• Типы в конструкторе
EmailTarget перенесены из аннотаций в сигнатуру.• Добавлена поддержка
yiisoft/mailer версии ^4.0|^5.0.• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовили Сергей Предводителев, Дмитрий Дерепко и Sanka.
🎁 Yii Logging File Target 3.0
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовили Сергей Предводителев и Дмитрий Дерепко.
🎁 Yii Logging Syslog Target 2.0
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовили Сергей Предводителев, Дмитрий Дерепко и Sanka.
👍4🔥2
#yiisoftYiiConsole #МажорныйРелиз #Релиз
🎁 Yii Console 2.0
• У команды
• Исправлена некорректная работа команды
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
• Явно прописаны транзитивные зависимости
😎 Релиз подготовили Сергей Предводителев и Дмитрий Дерепко.
🎁 Yii Console 2.0
• У команды
serve добавлена опция workers.• Исправлена некорректная работа команды
list при указании пространства имён.• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
• Явно прописаны транзитивные зависимости
psr/event-dispatcher и psr/log.😎 Релиз подготовили Сергей Предводителев и Дмитрий Дерепко.
👍3
#yiisoftTranslator #yiisoftTranslatorExtractor #МажорныйРелиз #Релиз
🎁 Yii Message Translator 3.0
• В интерфейсе
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовил Сергей Предводителев.
🎁 Yii Message Extractor 2.0
• Улучшено описание решения проблемы в дружественном исключении
• Добавлена поддержка
• Зависимость
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовил Сергей Предводителев.
🎁 Yii Message Translator 3.0
• В интерфейсе
TranslatorInterface реализован текучий интерфейс: методы addCategorySources(), setLocale(),withDefaultCategory() и withLocale() теперь возвращают static.• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовил Сергей Предводителев.
🎁 Yii Message Extractor 2.0
• Улучшено описание решения проблемы в дружественном исключении
NoCategorySourceConfigException.• Добавлена поддержка
yiisoft/translator версии ^3.0.• Зависимость
yiisoft/yii-console перенесена в секцию require-dev.• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовил Сергей Предводителев.
🏆5
#yiisoftRouter #yiisoftRouterFastroute #МажорныйРелиз #Релиз
🎁 Yii Router 3.0
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовил Сергей Предводителев.
🎁 Yii Router FastRoute Adapter 3.0
• Добавлена поддержка
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовил Сергей Предводителев.
🎁 Yii Router 3.0
• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовил Сергей Предводителев.
🎁 Yii Router FastRoute Adapter 3.0
• Добавлена поддержка
yiisoft/router версии ^3.0.• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.
Релиз подготовил Сергей Предводителев.
👍4🏆1
#yiisoftViewTwig #МинорныйРелиз #Релиз
🎁 Yii View Twig Renderer 2.1
• Минимальная версия PHP поднята до 8.0.
• Обновлена версия зависимости
• Добавлена поддержка
😎 В подготовке релиза приняли участие: Рустам Мамадаминов, Сергей Предводителев, Chris Yates, Sohel Ahmed Mesaniya, Евгений Зюбин, Wilmer Arambula, Sanka и Дмитрий Дерепко.
🎁 Yii View Twig Renderer 2.1
• Минимальная версия PHP поднята до 8.0.
• Обновлена версия зависимости
yiisoft/view до ^6.0|^7.0|^8.0.• Добавлена поддержка
psr/container версии ^2.0.😎 В подготовке релиза приняли участие: Рустам Мамадаминов, Сергей Предводителев, Chris Yates, Sohel Ahmed Mesaniya, Евгений Зюбин, Wilmer Arambula, Sanka и Дмитрий Дерепко.
👍3🏆1
#yiisoftTranslatorMessagePhp #ПатчРелиз #Релиз
🎁 Yii Translator PHP Message Storage 1.1.1
• Добавлена поддержка
😎 Релиз подготовил Сергей Предводителев.
🎁 Yii Translator PHP Message Storage 1.1.1
• Добавлена поддержка
yiisoft/translator версии ^3.0.😎 Релиз подготовил Сергей Предводителев.
👍4🔥1
#yiisoftYiiWidgets #МинорныйРелиз #Релиз
🎁 Yii Widgets 2.1
• Добавлена поддержка
• Обновлена версия зависимости
• Обновлена версия зависимости
😎 Релиз подготовили Рустам Мамадаминов и Сергей Предводителев.
🎁 Yii Widgets 2.1
• Добавлена поддержка
yiisoft/cache версии ^3.0.• Обновлена версия зависимости
yiisoft/view до ^8.0.• Обновлена версия зависимости
yiisoft/aliases до ^3.0.😎 Релиз подготовили Рустам Мамадаминов и Сергей Предводителев.
👍4🔥1
#yiisoftYiiRunner #yiisoftYiiRunnerHttp #yiisoftYiiRunnerConsole #yiisoftYiiRunnerRoadrunner #МажорныйРелиз #Релиз
🎁 Yii Runner 2.0
🎁 Yii HTTP Runner 2.0
🎁 Yii Console Runner 2.0
🎁 Yii RoadRunner Runner 2.0
• Раннеры адаптированы к соглашению Yii об именах групп конфигураций.
• Добавлена возможность указания имён групп конфигураций.
• Параметры "environment" и "debug" сделаны опциональными.
• Добавлен параметр "checkEvents".
😎 Релизы подготовили Сергей Предводителев, Рустам Мамадаминов и Александр Макаров.
🎁 Yii Runner 2.0
🎁 Yii HTTP Runner 2.0
🎁 Yii Console Runner 2.0
🎁 Yii RoadRunner Runner 2.0
• Раннеры адаптированы к соглашению Yii об именах групп конфигураций.
• Добавлена возможность указания имён групп конфигураций.
• Параметры "environment" и "debug" сделаны опциональными.
• Добавлен параметр "checkEvents".
😎 Релизы подготовили Сергей Предводителев, Рустам Мамадаминов и Александр Макаров.
👍3⚡1❤1
🔥 #Новости
Недавно было принято соглашение об именах групп конфигураций. Сейчас мы закончили адаптацию пакетов, демо и шаблонов приложений к этому соглашению. Список обновленных пакетов можно посмотреть в тикете на GitHub.
Если вы уже начали работу с шаблонами приложений
1) В
2) В секции
3) Переименуйте файлы конфигурации в соответствии с изменениями в предыдущем пункте.
4) Запустите
Список переименований:
-
-
-
-
-
-
-
-
-
-
-
-
Недавно было принято соглашение об именах групп конфигураций. Сейчас мы закончили адаптацию пакетов, демо и шаблонов приложений к этому соглашению. Список обновленных пакетов можно посмотреть в тикете на GitHub.
Если вы уже начали работу с шаблонами приложений
app или app-api, то вот инструкция по обновлению:1) В
composer.json укажите актуальные версии пакетов.2) В секции
config-plugin обновите имена конфигураций в соответствии со списком ниже.3) Переименуйте файлы конфигурации в соответствии с изменениями в предыдущем пункте.
4) Запустите
composer update.Список переименований:
-
common → di-
web → di-web-
console → di-console-
providers → di-providers-
providers-web → di-providers-web-
providers-console → di-providers-console-
delegates → di-delegates-
delegates-web → di-delegates-web-
delegates-console → di-delegates-console-
tags → di-tags-
tags-web → di-tags-web-
tags-console → di-tags-console🔥4👍1
✨#yiisoftResponseDownload
Новый пакет Yii PSR-7 Download Response Factory с фабрикой, помогающей создать PSR-7 ответ для скачивания файлов.
Пример использования:
Новый пакет Yii PSR-7 Download Response Factory с фабрикой, помогающей создать PSR-7 ответ для скачивания файлов.
Пример использования:
use \Psr\Http\Message\ResponseInterface;
use \Yiisoft\ResponseDownload\DownloadResponseFactory;
final class MyController
{
public function __construct(
private readonly DownloadResponseFactory $downloadResponseFactory
) {
}
public function sendMyContentAsFile(): ResponseInterface
{
return $this->downloadResponseFactory->sendContentAsFile('Hello!', 'message.txt');
}
public function sendMyFile(): ResponseInterface
{
return $this->downloadResponseFactory->sendFile('message.txt');
}
public function xSendMyFile(): ResponseInterface
{
return $this->downloadResponseFactory->xSendFile('message.txt');
}
public function sendMyStreamAsFile(): ResponseInterface
{
$steam = new MyStream();
return $this->downloadResponseFactory->sendStreamAsFile($steam, 'message.txt');
}
}
🎉5👍1
#yiisoftValidator #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii Validator 1.0
Первая стабильная версия валидатора выпущена 🎉
Пакет позволяет проверять данные в любом формате — массивы, объекты, скалярные значения и т. д. Например, валидация объекта будет выглядеть следующим образом:
- Поддержка произвольных наборов данных.
- Обработка вложенных структур (один к одному и один ко многим).
- Поддержка PHP атрибутов.
- Форматирование и перевод сообщений об ошибках.
- Перевод имён атрибутов.
- Условная валидация.
- Возможность передать контекст валидации в обработчики правил.
- Основные правила валидации из коробки.
- Поддержка DI-контейнера для получения обработчиков правил с зависимостями.
- Экспорт правил для использования на фронтенде.
Подробности смотрите в Readme и документации.
📗 А также читайте обзорную статью «Yii Validator — простой и мощный» от Сергея Предводителева.
🎁 Yii Validator 1.0
Первая стабильная версия валидатора выпущена 🎉
Пакет позволяет проверять данные в любом формате — массивы, объекты, скалярные значения и т. д. Например, валидация объекта будет выглядеть следующим образом:
use Yiisoft\Validator\Rule\AtLeast;Результат валидации — объект, который позволяет проверить, прошла ли проверка успешно:
use Yiisoft\Validator\Rule\Email;
use Yiisoft\Validator\Rule\Length;
use Yiisoft\Validator\Rule\Number;
use Yiisoft\Validator\Rule\Required;
use Yiisoft\Validator\Validator;
#[AtLeast(['email', 'phone'])]
final class Person
{
public function __construct(
#[Required]
#[Length(min: 2)]
public ?string $name = null,
#[Number(min: 21)]
public ?int $age = null,
#[Email]
public ?string $email = null,
public ?string $phone = null,
) {
}
}
$person = new Person(
name: 'John',
age: 17,
email: '[email protected]',
phone: null
);
$result = (new Validator())->validate($person);
$result->isValid();А также получить все ошибки:
$result->getErrorMessages();Основные возможности
- Поддержка произвольных наборов данных.
- Обработка вложенных структур (один к одному и один ко многим).
- Поддержка PHP атрибутов.
- Форматирование и перевод сообщений об ошибках.
- Перевод имён атрибутов.
- Условная валидация.
- Возможность передать контекст валидации в обработчики правил.
- Основные правила валидации из коробки.
- Поддержка DI-контейнера для получения обработчиков правил с зависимостями.
- Экспорт правил для использования на фронтенде.
Подробности смотрите в Readme и документации.
📗 А также читайте обзорную статью «Yii Validator — простой и мощный» от Сергея Предводителева.
🔥18👍8🎉5👏1🏆1
✨#yiisoftYiiDevPanel
Yii Development Panel – инструмент нового поколения для помощи разработчикам.
Yii Development Panel агрегирует в себе все частоиспользуемые вещи при разработке: классический Debug, генератор кода Gii, новый модуль для инспекции приложения и много новых грядущих фич.
Панель можно скачать себе на компьютер/мобильный телефон как обычное PWA приложение и удобно переключаться между серверами. Можно подключиться даже к продакшену.
Проект написан на React, что позволяет значительно быстрее втаскивать всевозможные UI фишки, по сравнению с классическим HTML+CSS+JS на бэкенде.
Грядущие фичи:
• Поддержка кастомных панелек
• Open API просмотрщик
• Механизм для realtime получения дебаг данных
Для установки нужно подключить
Yii Development Panel – инструмент нового поколения для помощи разработчикам.
Yii Development Panel агрегирует в себе все частоиспользуемые вещи при разработке: классический Debug, генератор кода Gii, новый модуль для инспекции приложения и много новых грядущих фич.
Панель можно скачать себе на компьютер/мобильный телефон как обычное PWA приложение и удобно переключаться между серверами. Можно подключиться даже к продакшену.
Проект написан на React, что позволяет значительно быстрее втаскивать всевозможные UI фишки, по сравнению с классическим HTML+CSS+JS на бэкенде.
Грядущие фичи:
• Поддержка кастомных панелек
• Open API просмотрщик
• Механизм для realtime получения дебаг данных
Для установки нужно подключить
yii-debug, yii-debug-api и проследовать по инструкции по установке Yii Development Panel из README проекта.🔥16👍4⚡2
#yiisoftRbacCycleDb #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii RBAC Cycle Database Storage 1.0
Первая стабильная версия хранилища связки ролей с пользователями и иерархии ролей/разрешений для Yii RBAC на основе базы данных с использованием абстракции Cycle DBAL.
Пакет предоставляет:
• реализации интерфейсов хранилища Yii RBAC;
• консольную команду
🎁 Yii RBAC Cycle Database Storage 1.0
Первая стабильная версия хранилища связки ролей с пользователями и иерархии ролей/разрешений для Yii RBAC на основе базы данных с использованием абстракции Cycle DBAL.
Пакет предоставляет:
• реализации интерфейсов хранилища Yii RBAC;
• консольную команду
rbac/cycle/init для создания необходимых таблиц в БД.🔥15👍4🏆2
#yiisoftResponseDownload #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii PSR-7 download response factory 1.0
Первая стабильная версия пакета, предоставляющего несколько методов для создания PSR-7 совместимых ответов для загрузки контента с использованием PSR-17 совместимых фабрик ответов и потоков.
🎁 Yii PSR-7 download response factory 1.0
Первая стабильная версия пакета, предоставляющего несколько методов для создания PSR-7 совместимых ответов для загрузки контента с использованием PSR-17 совместимых фабрик ответов и потоков.
GitHub
GitHub - yiisoft/response-download: The package provides a factory to help forming file download PSR-7 response
The package provides a factory to help forming file download PSR-7 response - yiisoft/response-download
🔥8👍2❤1
#yiisoftYiiConsole #ПатчРелиз #Релиз
🎁 Yii Console 2.0.1
• Исправлена проблема с запуском консольной команды
😎 Релиз подготовил Александр Макаров.
🎁 Yii Console 2.0.1
• Исправлена проблема с запуском консольной команды
serve в Windows.😎 Релиз подготовил Александр Макаров.
🔥5👍3
#yiisoftValidator #МинорныйРелиз #Релиз
🎁 Yii Validator 1.1.0
• Добавлен иммутабельный метод
• Добавлено новое правило
• В
• В трейте
😎 Релиз подготовили Алексей Рогачёв, Александр Макаров и Сергей Предводителев.
🎁 Yii Validator 1.1.0
• Добавлен иммутабельный метод
Validator::withDefaultSkipOnEmptyCondition(), позволяющий указать условие "пустоты" по умолчанию.• Добавлено новое правило
StringValue, которое проверяет, что значение является строкой.• В
WhenEmpty добавлена проверка на "пустоту" iterable-объектов.• В трейте
CountableLimitTrait в качестве лимита разрешено указывать 0.😎 Релиз подготовили Алексей Рогачёв, Александр Макаров и Сергей Предводителев.
🔥8
#yiisoftDb #yiisoftDbOracle #yiisoftDbMssql #yiisoftDbMysql #yiisoftDbPgsql #yiisoftDbSqlite #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii DB 1.0
🎁 Yii DB Oracle Extension 1.0
🎁 Yii DB MSSQL Server Extension 1.0
🎁 Yii DB MySQL Extension 1.0
🎁 Yii DB PostgreSQL Extension 1.0
🎁 Yii DB SQLite Extension 1.0
Мы приготовили первый релиз Yii Database и его драйверов.
Пакет не зависит от фреймворка и может работать с разными типами баз данных:
MariaDB, MSSQL, MySQL, Oracle, PostgreSQL и SQLite.
При помощи пакета можно делать запросы на создание, чтение, обновление и удаление записей в базе, а также выполнять свои запросы.
Пакет сделан гибким. Можно будет добавить поддержку новых баз данных.
Как обычно, покрытие тестами, типами и статанализом близко к абсолютному как в главном пакете, так и в драйверах.
Отдельные поздравления для @terabytesoftw и @darkdef_pr, которые сделали невозможное портировав пакет из DBAL Yii2, переработав и улучшив его 👏
🎁 Yii DB 1.0
🎁 Yii DB Oracle Extension 1.0
🎁 Yii DB MSSQL Server Extension 1.0
🎁 Yii DB MySQL Extension 1.0
🎁 Yii DB PostgreSQL Extension 1.0
🎁 Yii DB SQLite Extension 1.0
Мы приготовили первый релиз Yii Database и его драйверов.
Пакет не зависит от фреймворка и может работать с разными типами баз данных:
MariaDB, MSSQL, MySQL, Oracle, PostgreSQL и SQLite.
При помощи пакета можно делать запросы на создание, чтение, обновление и удаление записей в базе, а также выполнять свои запросы.
$rows = (new Query($db))
->select(['id', 'email'])
->from('{{%user}}')
->where(['last_name' => 'Smith'])
->limit(10)
->all();Пакет сделан гибким. Можно будет добавить поддержку новых баз данных.
Как обычно, покрытие тестами, типами и статанализом близко к абсолютному как в главном пакете, так и в драйверах.
Отдельные поздравления для @terabytesoftw и @darkdef_pr, которые сделали невозможное портировав пакет из DBAL Yii2, переработав и улучшив его 👏
🔥33👍9❤2🍾2🎉1
#yiisoftRbac #ПатчРелиз #Релиз
🎁 Yii Role-Based Access Control 1.0.1
• При получении несуществующих дефолтных ролей теперь выбрасывается исключение, притом "дружественное".
😎 Релиз подготовил Dmitriy Goriaev.
🎁 Yii Role-Based Access Control 1.0.1
• При получении несуществующих дефолтных ролей теперь выбрасывается исключение, притом "дружественное".
😎 Релиз подготовил Dmitriy Goriaev.
🔥10👍2😁1👀1
#yiisoftRbacCycleDb #МажорныйРелиз #Релиз
🎁 Yii RBAC Cycle Database 2.0.0
• Добавлена поддержка уровня вложенности больше 1 для ролей и прав.
• Исправлен неработающий флаг
• Исправлена поддержка всех доступных в Cycle реляционных баз данных.
• Тип timestamp заменен на integer.
😎 Релиз подготовил Алексей Рогачев. Отдельная благодарность пользователю sobhan-m94 за обнаружение некоторых проблем и попытки их исправить.
🎁 Yii RBAC Cycle Database 2.0.0
• Добавлена поддержка уровня вложенности больше 1 для ролей и прав.
• Исправлен неработающий флаг
--force для консольной команды RbacCycleInit.• Исправлена поддержка всех доступных в Cycle реляционных баз данных.
• Тип timestamp заменен на integer.
😎 Релиз подготовил Алексей Рогачев. Отдельная благодарность пользователю sobhan-m94 за обнаружение некоторых проблем и попытки их исправить.
🔥9❤2
#yiisoftRbacDb #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii RBAC Database 1.0
Первая стабильная версия хранилища связки ролей с пользователями и иерархии ролей/разрешений для Yii RBAC на основе базы данных с использованием абстракции Yii Database.
Пакет предоставляет:
• реализации интерфейсов хранилища Yii RBAC;
• консольную команду
😎 Релиз подготовил Алексей Рогачев.
🎁 Yii RBAC Database 1.0
Первая стабильная версия хранилища связки ролей с пользователями и иерархии ролей/разрешений для Yii RBAC на основе базы данных с использованием абстракции Yii Database.
Пакет предоставляет:
• реализации интерфейсов хранилища Yii RBAC;
• консольную команду
rbac/db/init для создания необходимых таблиц в БД.😎 Релиз подготовил Алексей Рогачев.
🔥14🦄3❤2
#yiisoftHydrator #yiisoftInputValidation #inputHttp
Созданы репозитории под три новых пакета.
✨ Yii Hydrator
Гидратор, позволяющий создавать и наполнять любые объекты с поддержкой маппинга, приведения типов, атрибутов и разрешением зависимостей.
✨ Yii Input Validation
Расширение гидратора, позволяющее при создании/наполнении объекта выполнять валидацию.
✨ Yii Input HTTP
Дополнения к гидратору и Yii Middleware Dispatcher:
• модели запроса (этот пакет заменит Yii Request Model);
• атрибуты для гидратора, позволяющие получать данные из объекта запроса (
• возможность использовать атрибуты гидратора для наполнения параметров в экшенах.
Черновик функционала уже готов и в ближайшее время будет перенесён в основные репозитории:
• vjik/input-hydrator
• vjik/input-validation
• vjik/input-http
• PR к yiisoft/form
• PR в демо
Созданы репозитории под три новых пакета.
✨ Yii Hydrator
Гидратор, позволяющий создавать и наполнять любые объекты с поддержкой маппинга, приведения типов, атрибутов и разрешением зависимостей.
✨ Yii Input Validation
Расширение гидратора, позволяющее при создании/наполнении объекта выполнять валидацию.
✨ Yii Input HTTP
Дополнения к гидратору и Yii Middleware Dispatcher:
• модели запроса (этот пакет заменит Yii Request Model);
• атрибуты для гидратора, позволяющие получать данные из объекта запроса (
Query, Body, UploadedFiles и т. д.);• возможность использовать атрибуты гидратора для наполнения параметров в экшенах.
Черновик функционала уже готов и в ближайшее время будет перенесён в основные репозитории:
• vjik/input-hydrator
• vjik/input-validation
• vjik/input-http
• PR к yiisoft/form
• PR в демо
🔥9❤2👍2