⚡️ #yiisoftFiles
В пакете Yii Files добавили возврат результата и тип возвращаемый функцией обратного вызова передаваемой в
В пакете Yii Files добавили возврат результата и тип возвращаемый функцией обратного вызова передаваемой в
set_error_handler()
(PR).⚡️ #yiisoftRbacPhp
В пакете Yii RBAC PHP File Storage добавлена поддержка создания вложенных папок в случаях, когда папка для хранения данных не существует (PR).
В пакете Yii RBAC PHP File Storage добавлена поддержка создания вложенных папок в случаях, когда папка для хранения данных не существует (PR).
⚡️ #yiisoftYiiRunnerConsole
В пакете Yii Console Runner добавили приёмочные тесты с помощью Codeception (PR).
В пакете Yii Console Runner добавили приёмочные тесты с помощью Codeception (PR).
👍1
🔥 #Новости
Алексей Рогачёв вернулся в Yii Core Team. Алексей уже ранее работал над Yii, но потом пришлось переключиться на другие задачи, в том числе работу над сайтом yiiframework.com и поддержку пакетов для Yii2. Сейчас он закончил работу над большим релизом API Documentation Generator for Yii 2 и теперь присоединяется к разработке Yii3. С возвращением 🎉
Алексей Рогачёв вернулся в Yii Core Team. Алексей уже ранее работал над Yii, но потом пришлось переключиться на другие задачи, в том числе работу над сайтом yiiframework.com и поддержку пакетов для Yii2. Сейчас он закончил работу над большим релизом API Documentation Generator for Yii 2 и теперь присоединяется к разработке Yii3. С возвращением 🎉
🎉9👍3🔥3
#yiisoftYiiRunner #yiisoftYiiRunnerHttp #yiisoftYiiRunnerConsole #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii Runner 1.0.0
🎁 Yii HTTP Runner 1.0.0
🎁 Yii Console Runner 1.0.0
Раннеры позволяют упростить процесс настройки приложения, скрывая детали инициализации. Например, вместо довольно сложной инициализации, в точке входа в HTTP-приложение достаточно простого кода:
Вместе с основным пакетом зарелизили адаптеры для консольного и HTTP-приложения. Релиз адаптера для RoadRunner (Yii RoadRunner Runner) будет чуть позже.
🎁 Yii Runner 1.0.0
🎁 Yii HTTP Runner 1.0.0
🎁 Yii Console Runner 1.0.0
Раннеры позволяют упростить процесс настройки приложения, скрывая детали инициализации. Например, вместо довольно сложной инициализации, в точке входа в HTTP-приложение достаточно простого кода:
<?php
declare(strict_types=1);
use Yiisoft\Yii\Runner\Http\HttpApplicationRunner;
require_once __DIR__ . '/autoload.php';
(
new HttpApplicationRunner(
__DIR__,
$_ENV['YII_DEBUG'],
$_ENV['YII_ENV']
)
)->run();
Вместе с основным пакетом зарелизили адаптеры для консольного и HTTP-приложения. Релиз адаптера для RoadRunner (Yii RoadRunner Runner) будет чуть позже.
🎉7
#yiisoftProfiler #ПатчРелиз #Релиз
🎁 Yii Profiler 1.0.2
• В методе
• При получении категории из контекста добавлена проверка на то, что категория является строкой.
Оба изменения были выполнены в рамках одного пулл-реквеста.
🎁 Yii Profiler 1.0.2
• В методе
Profiler::end()
запрещено передавать контекст, содержащий ключи beginMemory
или beginTime
.• При получении категории из контекста добавлена проверка на то, что категория является строкой.
Оба изменения были выполнены в рамках одного пулл-реквеста.
⚡️ #yiisoftRequestModel #yiisoftDemoApi
В пакете Yii Request Model удалили конфигурацию фабрики мидлварей (PR). Подразумевается, что она должна конфигурироваться в приложении. В демо API-приложения, где используется Yii Request Model так и сделали (PR).
В пакете Yii Request Model удалили конфигурацию фабрики мидлварей (PR). Подразумевается, что она должна конфигурироваться в приложении. В демо API-приложения, где используется Yii Request Model так и сделали (PR).
⚡️ #yiisoftYiiQueue
В пакете Yii Queue удалили все события (PR), так как единственный кейс для их использования — это отслеживание метрик, а это можно (и лучше) делать в других местах.
В пакете Yii Queue удалили все события (PR), так как единственный кейс для их использования — это отслеживание метрик, а это можно (и лучше) делать в других местах.
⚡️ #yiisoftRbac #yiisoftRbacPhp
Продолжаем готовить RBAC к релизу.
• В пакете Yii RBAC в фабрике для создания правил
• Перенесли
• Переименовали методы в классе
Продолжаем готовить RBAC к релизу.
• В пакете Yii RBAC в фабрике для создания правил
ClassNameRuleFactory
добавили валидацию передаваемого имени класса и создаваемого правила, в случае ошибки бросается исключение RuntimeException
с соответствующим сообщением (PR).• Перенесли
Yiisoft\Rbac\RuleFactory\ClassNameRuleFactory
в Yiisoft\Rbac\ClassNameRuleFactory
, переименовали метод Manager::setGuestRole()
в Manager::setGuestRoleName()
, причесали служебные файлы и увеличили покрытие тестами до 100% в пакете Yii RBAC (PR).• Переименовали методы в классе
\Yiisoft\Rbac\Manager
(PR):setDefaultRoles()
→ setDefaultRoleNames()
getDefaultRoles()
→ getDefaultRoleNames()
getDefaultRoleInstances()
→ getDefaultRoles()
• В пакете Yii RBAC PHP File Storage адаптировали код к последним изменениям в Yii RBAC, причесали служебные файлы и увеличили покрытие тестами (PR, PR, PR).⚡️ #yiisoftAppApi
Адаптировали шаблон API-приложения к внесённым ранее изменениям в конфигурации пакета Yii Request Model (PR).
Адаптировали шаблон API-приложения к внесённым ранее изменениям в конфигурации пакета Yii Request Model (PR).
⚡️ #yiisoftDemo
Адаптировали демо веб-приложения к внесённым ранее изменениям в пакете Yii RBAC (PR).
Адаптировали демо веб-приложения к внесённым ранее изменениям в пакете Yii RBAC (PR).
⚡️ #yiisoftForm #yiisoftDemo
Сделали большой рефакторинг (в пулл-реквесте более 150 файлов), попутно внеся несколько улучшений, в пакете Yii Form (PR).
• Упростили создание полей в представлениях.
• Конфигурация полей собирается из трёх частей в следующем порядке:
- конфигурация виджета поля в фабрике виджетов;
- конфигурация поля в классе`Field`;
- конфигурация, передаваемая пользователем при создания поля.
• Методы общие для нескольких виджетов сгруппированы в абстрактные классы, от которых затем наследуются сами виджеты (
• Установка атрибутов полей в зависимости от правил валидации в форме вынесена в отдельный класс
• В интерфейсе модели формы
• В абстрактном классе модели формы
• В методе очистки коллекции ошибок
• Добавлен виджет
• Добавлена поддержка PHP 8.1.
• Улучшили сообщения об ошибках.
• Добавили ещё тестов.
Соответствующие изменения внесли в демо веб-приложения (PR).
Сделали большой рефакторинг (в пулл-реквесте более 150 файлов), попутно внеся несколько улучшений, в пакете Yii Form (PR).
• Упростили создание полей в представлениях.
Field::widget()->config($form, 'email')->email()
↓Field::widget()->email($form, 'email')
• Общая конфигурация для всех полей и конфигурация конкретных полей использует синтаксис Yii Definitions.• Конфигурация полей собирается из трёх частей в следующем порядке:
- конфигурация виджета поля в фабрике виджетов;
- конфигурация поля в классе`Field`;
- конфигурация, передаваемая пользователем при создания поля.
• Методы общие для нескольких виджетов сгруппированы в абстрактные классы, от которых затем наследуются сами виджеты (
InputAttributes
, ButtonAttributes
и др.).• Установка атрибутов полей в зависимости от правил валидации в форме вынесена в отдельный класс
FieldValidator
, а также добавлены интерфейсы HasLengthInterface
, MatchRegularInterface
и NumberInterface
, реализуемые полями имеющими соответствующие атрибуты.• В интерфейсе модели формы
FormModelInterface
удалили метод setFormErrorsClass()
.• В абстрактном классе модели формы
FormModel
удалили метод getError()
.• В методе очистки коллекции ошибок
FormErrorsInterface::clear()
добавили опциональный строковой параметр, позволяющий удалить ошибки для конкретного атрибута.• Добавлен виджет
ButtonGroup
.• Добавлена поддержка PHP 8.1.
• Улучшили сообщения об ошибках.
• Добавили ещё тестов.
Соответствующие изменения внесли в демо веб-приложения (PR).
👍4
⚡️ #yiisoftWidget
В пакете Yii Widget добавили пример инициализации
В пакете Yii Widget добавили пример инициализации
WidgetFactory
в решение в дружественном исключении WidgetFactoryInitializationException
(PR).⚡️ #yiisoftForm
В пакете Yii Form исправили ошибку в поле
В пакете Yii Form исправили ошибку в поле
Number
, теперь значение поля null
учитывается при генерации виджета (PR).⚡️ #yiisoftDbMysql
В пакете Yii DB MySQL Extension немного отрефакторили запросы в классе схемы (PR).
В пакете Yii DB MySQL Extension немного отрефакторили запросы в классе схемы (PR).
⚡️ #yiisoftForm
В пакете Yii Form добавлена возможность использовать контейнер (обёртка в HTML) в виджете
В пакете Yii Form добавлена возможность использовать контейнер (обёртка в HTML) в виджете
ButtonGroup
(PR).👍1
⚡️ #yiisoftRbacSpiralDb #yiisoftRbacCycleDb
Переименовали пакет Yii RBAC Spiral Database.
Yii RBAC Spiral Database (
↓
Yii RBAC Cycle Database (
Переименовали пакет Yii RBAC Spiral Database.
Yii RBAC Spiral Database (
yiisoft/rbac-spiral-db
)↓
Yii RBAC Cycle Database (
yiisoft/rbac-cycle-db
)⚡️ #yiisoftForm
В пакете Yii Form добавили возможность указать для каких именно атрибутов выводить ошибки (PR):
• в методе
• в виджете
В пакете Yii Form добавили возможность указать для каких именно атрибутов выводить ошибки (PR):
• в методе
FormErrors::getErrorSummary()
добавлен опциональный аргумент $onlyAttributes
;• в виджете
ErrorSummary
добавлен метод onlyAttributes()
.⚡️ #yiisoftForm
В пакете Yii Form сделали исключения дружественными (то есть сразу с вариантами решения проблемы, см. Yii Friendly Exception) и добавили ещё тестов (PR).
В пакете Yii Form сделали исключения дружественными (то есть сразу с вариантами решения проблемы, см. Yii Friendly Exception) и добавили ещё тестов (PR).
👍2