⚡️ #yiisoftRbac
Немного доработали и причесали пакет Yii Role-Based Access Control (PR):
• исправлена ошибка: при удалении роли не удалялись связи роли с пользователем;
• удалён неиспользуемый код;
• обновлены dev-зависимости;
• версия экшена
• добавлены тесты, MSI увеличен до 95,8%.
Немного доработали и причесали пакет Yii Role-Based Access Control (PR):
• исправлена ошибка: при удалении роли не удалялись связи роли с пользователем;
• удалён неиспользуемый код;
• обновлены dev-зависимости;
• версия экшена
actions/cache
в GitHub Actions поднята до 3;• добавлены тесты, MSI увеличен до 95,8%.
⚡️ #yiisoftRbacRulesContainer
Мелкие улучшения в Yii RBAC Rules Container (PR):
• обновлены dev-зависимости;
• версия экшена
• немного улучшены doc-блоки.
Мелкие улучшения в Yii RBAC Rules Container (PR):
• обновлены dev-зависимости;
• версия экшена
actions/cache
в GitHub Actions поднята до 3;• немного улучшены doc-блоки.
⚡️ #yiisoftRbacPhp
Доработали Yii RBAC PHP File Storage (PR):
• исправлена ошибка: некорректно обновлялись дочерние элементы при обновлении элемента;
• версия экшена
• немного улучшены doc-блоки.
Доработали Yii RBAC PHP File Storage (PR):
• исправлена ошибка: некорректно обновлялись дочерние элементы при обновлении элемента;
• версия экшена
actions/cache
в GitHub Actions поднята до 3;• немного улучшены doc-блоки.
👍1
⚡️ #yiisoftRbacCycleDb
Выполнили небольшой рефакторинг и улучшили запросы к БД в пакете Yii RBAC Cycle Database Storage (PR).
Выполнили небольшой рефакторинг и улучшили запросы к БД в пакете Yii RBAC Cycle Database Storage (PR).
👍1
⚡️ #yiisoftData
В классе
Ранее первый символ свойства приводился к верхнему регистру, что в свойствах, использующих подчёркивание приводила к ошибке:
Новый алгоритм полноценно приводит имя свойства к Pascal Case:
В классе
KeysetPaginator
пакета Yii Data исправлен код для получения геттера свойства по имени свойства (PR).Ранее первый символ свойства приводился к верхнему регистру, что в свойствах, использующих подчёркивание приводила к ошибке:
created_at
→ getCreated_at
Новый алгоритм полноценно приводит имя свойства к Pascal Case:
created_at
→ getCreatedAt
👍1
⚡️ #yiisoftHtml
Несколько улучшений в Yii HTML:
• добавлен класс для тега
• в методе
Например, данные для тега
Результатом будет:
Несколько улучшений в Yii HTML:
• добавлен класс для тега
Form
и метод Html::form()
(PR);• в методе
Select::optionsData()
добавлена поддержка групп опций (PR).Например, данные для тега
Select
теперь можно передать вот так:Select::tag()->optionsData([
1 => 'One',
'Test Group' => [
2 => 'Two',
3 => 'Three',
],
]);
Результатом будет:
<select>
<option value="1">One</option>
<optgroup label="Test Group">
<option value="2">Two</option>
<option value="3">Three</option>
</optgroup>
</select>
👍2
⚡️ #yiisoftRbac #yiisoftRbacPhp
В пакете Yii Role-Based Access Control при добавлении роли или разрешения добавили проверку на существование в хранилище роли или разрешения с таким именем (PR).
Если роль или разрешение уже существуют (даже если добавляется роль, а существует разрешение, и наоборот), то будет брошено исключение
Для проверки существования роли или разрешения был добавлен метод
Новый метод уже реализован в пакете Yii RBAC PHP File Storage (PR).
В пакете Yii Role-Based Access Control при добавлении роли или разрешения добавили проверку на существование в хранилище роли или разрешения с таким именем (PR).
Если роль или разрешение уже существуют (даже если добавляется роль, а существует разрешение, и наоборот), то будет брошено исключение
ItemAlreadyExistsException
.Для проверки существования роли или разрешения был добавлен метод
exists()
в интерфейсе ItemsStorageInterface
. Новый метод уже реализован в пакете Yii RBAC PHP File Storage (PR).
👍1
⚡️ #yiisoftHtml
В пакете Yii HTML удалили psalm-тип
В пакете Yii HTML удалили psalm-тип
HtmlAttributes
, так как он был слишком навязчивым при использовании пакета (PR).👍1
⚡️ #yiisoftHtml
Ещё несколько улучшений в Yii HTML:
• сделали отдельный класс
• в методе
Ещё несколько улучшений в Yii HTML:
• сделали отдельный класс
Range
для тега input
с типом range
, а также класс для тега Datalist
(PR);• в методе
Select::optionsData()
добавили возможность указать индивидуальные атрибуты для опций и групп опций (PR).👍1
⚡️ #yiisoftRbacRulesContainer
В пакете Yii RBAC Rules Container убрали транзитивные зависимости, прописав их явно в
В пакете Yii RBAC Rules Container убрали транзитивные зависимости, прописав их явно в
composer.json
(PR).#yiisoftRbac #yiisoftRbacPhp #yiisoftRbacRulesContainer #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii Role-Based Access Control 1.0.0
Библиотека для управления доступом на основе ролей (RBAC).
• Гибкая иерархия ролей, разрешений и правил.
• Наследование ролей и разрешений.
• Интерфейсы для хранилищ и фабрики правил.
• Возможность использовать разные хранилища для связки ролей с пользователями и иерархии ролей/разрешений.
• Удобное API для управления иерархией ролей/разрешений.
🎁 Yii RBAC PHP File Storage 1.0.0
Реализация хранилища для связки ролей с пользователями и иерархии ролей/разрешений на основе PHP-файлов.
🎁 Yii RBAC Rules Container 1.0.0
Фабрика для создания объектов правил RBAC на базе Yii Factory с использованием синтаксиса Yii Definition. Правила создаются один раз и кэшируются, при последующих запросах возвращается тот же экземпляр.
🎁 Yii Role-Based Access Control 1.0.0
Библиотека для управления доступом на основе ролей (RBAC).
• Гибкая иерархия ролей, разрешений и правил.
• Наследование ролей и разрешений.
• Интерфейсы для хранилищ и фабрики правил.
• Возможность использовать разные хранилища для связки ролей с пользователями и иерархии ролей/разрешений.
• Удобное API для управления иерархией ролей/разрешений.
🎁 Yii RBAC PHP File Storage 1.0.0
Реализация хранилища для связки ролей с пользователями и иерархии ролей/разрешений на основе PHP-файлов.
🎁 Yii RBAC Rules Container 1.0.0
Фабрика для создания объектов правил RBAC на базе Yii Factory с использованием синтаксиса Yii Definition. Правила создаются один раз и кэшируются, при последующих запросах возвращается тот же экземпляр.
🔥6👍2
⚡️ #yiisoftForm
В пакете Yii Form удалили виджет
В пакете Yii Form удалили виджет
Radio
, так как радиокнопки всегда используются в группе, а для этого есть RadioList
(PR).⚡️ #yiisoftHtml
В Yii HTML добавили параметр
В Yii HTML добавили параметр
$attributes
(атрибуты тега) в методы Html::input()
,Html::buttonInput()
, Html::submitInput()
и Html::resetInput()
(PR).⚡️ #yiisoftValidator
Продолжаем работу над валидатором Yii Validator:
• добавили в код типизацию
• описали использование атрибутов с трейтами и добавили соответствующие тесты (PR);
• выполнили рефакторинг тестов (PR).
Продолжаем работу над валидатором Yii Validator:
• добавили в код типизацию
mixed
и функцию get_debug_type()
вместо конструкции is_object() ? get_class() : gettype()
(PR);• описали использование атрибутов с трейтами и добавили соответствующие тесты (PR);
• выполнили рефакторинг тестов (PR).
⚡️ #yiisoftYiiBootstrap5
В пакете Yii Bootstrap 5 у виджета
В пакете Yii Bootstrap 5 у виджета
Accordion
добавлена поддержка Stringable
-объектов для содержимого элементов аккордеона (PR).⚡️ #yiisoftDocs
В документации зафиксировали соглашение об использовании атрибутов PhpStorm (PR).
Атрибуты PhpStorm МОГУТ использоваться в коде, но пакет
В документации зафиксировали соглашение об использовании атрибутов PhpStorm (PR).
Атрибуты PhpStorm МОГУТ использоваться в коде, но пакет
jetbrains/phpstorm-attributes
ДОЛЖЕН быть добавлен как dev-зависимость.⚡️ #yiisoftDemo
В демо веб-приложения подняли версию PSR-контейнера до
В демо веб-приложения подняли версию PSR-контейнера до
^1.1
и начали использовать стабильную версию Yii RBAC (PR).👍3
⚡️ #yiisoftData
Несколько улучшений в Yii Data (PR):
• в сортировке добавили метод
• финализировали классы процессоров.
Несколько улучшений в Yii Data (PR):
• в сортировке добавили метод
Sort::withoutDefaultSorting()
, позволяющий отключить использование настроек сортировки по умолчанию;• финализировали классы процессоров.
⚡️ #yiisoftValidator
Ещё партия доработок валидатора Yii Validator.
• Добавили новое правило
• При использовании атрибутов добавили возможность комбинировать правило
• Метод
• Добавили недостающие элементы в массиве, возвращаемом методом
• Для правила
• Добавили тест произвольного правила и немного допилили документацию (PR).
Ещё партия доработок валидатора Yii Validator.
• Добавили новое правило
Count
, проверяющее количество элементов в массиве или объекте, реализующем интерфейс Countable
(PR).• При использовании атрибутов добавили возможность комбинировать правило
Each
с другими правилами (PR).• Метод
Result::addError()
теперь возвращает сам объект результата валидации, что позволяет использовать цепочки вызова метода (PR).• Добавили недостающие элементы в массиве, возвращаемом методом
getOptions()
, в правилах AtLeast
, Each
, Email
, Ip
, Number
и Subset
(PR).• Для правила
Nested
добавили тест, проверяющий работу правила в случае комбинирования вложенной структуры и пути в виде строки, с точкой в качестве разделителя (PR).• Добавили тест произвольного правила и немного допилили документацию (PR).
❤3
⚡️ #yiisoftHtml
Обновление в Yii HTML:
• Добавлен виджет
• В виджетах
• Добавлены классы для тегов
Обновление в Yii HTML:
• Добавлен виджет
ButtonGroup
(PR).• В виджетах
CheckboxList
и RadioList
добавлен метод name()
, позволяющий изменить имя после создания виджета (PR).• Добавлены классы для тегов
Legend
и Fieldset
(PR).