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

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

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

Поддержать разработчиков:
https://opencollective.com/yiisoft
加入频道
⚡️ #yiisoftYiiBulma #yiisoftWidget #yiisoftYiiWidgets #yiisoftCache #yiisoftYiiView #yiisoftView #yiisoftValidator #yiisoftFiles

Обновили версии действий actions/cache и actions/checkout до 3 в GitHub Workflows, а также подняли версию PHP в конфигурации Scrutinizer до 8.0.18 в пакетах:

- Yii Bulma (PR)
- Yii Widget (PR)
- Yii Widgets (PR)
- Yii Caching Library (PR)
- Yii View Extension (PR)
- Yii View (PR)
- Yii Validator (PR)
- Yii Files (PR)
⚡️ #yiisoftMailer #yiisoftLogTargetSyslog #yiisoftHttp #yiisoftI18n #yiisoftLog #yiisoftLogTargetDb #yiisoftLogTargetEmail #yiisoftMailerSymfony #yiisoftMiddlewareDispatcher #yiisoftMutexPdoOracle #yiisoftMutexRedis #yiisoftRbac #yiisoftRbacDb #yiisoftRbacPhp #yiisoftRequestBodyParser #yiisoftRateLimiter #yiisoftProxy #yiisoftProfiler #yiisoftMutexPdoPgsql #yiisoftMutexPdoMysql #yiisoftMailerSwiftmailer #yiisoftHtml #yiisoftRequestModel #yiisoftRequirements #yiisoftRouter #yiisoftRouterFastroute #yiisoftSession #yiisoftStrings #yiisoftTestSupport #yiisoftTranslator #yiisoftTranslatorMessageDb #yiisoftUser #yiisoftView #yiisoftViewTwig #yiisoftWidget #yiisoftYiiConsole

Сделали изменения в стили кода. Методы, вызываемые «цепочкой», перенесли на новую строку:

- Yii Mailer Library (PR)
- Yii Logging Syslog Target (PR)
- Yii HTTP (PR)
- Yii Internationalization Library (PR)
- Yii Logging Library (PR)
- Yii Logging DB Target (PR)
- Yii Logging Email Target (PR)
- Yii Mailer Symfony Mailer Extension (PR)
- Yii Middleware Dispatcher (PR)
- Yii Mutex Oracle PDO Driver (PR)
- Yii Mutex Redis Driver (PR)
- Yii Role-Based Access Control (PR)
- Yii RBAC Database (PR)
- Yii RBAC PHP File Storage (PR)
- Yii Request Body Parser (PR)
- Yii Rate Limiter Middleware (PR)
- Yii Proxy (PR)
- Yii Profiler (PR)
- Yii Mutex PostgreSQL PDO Driver (PR)
- Yii Mutex MySQL PDO Driver (PR)
- Yii Mailer SwiftMailer Extension (PR)
- Yii HTML (PR)
- Yii Request Model (PR)
- Yii Requirements Checker (PR)
- Yii Router (PR)
- Yii Router FastRoute Adapter (PR)
- Yii Session (PR)
- Yii Strings (PR)
- Yii Test Support (PR)
- Yii Message Translator (PR)
- Yii Translator DB Message Storage (PR)
- Yii User (PR)
- Yii View (PR)
- Yii View Twig Renderer (PR)
- Yii Widget (PR)
- Yii Console (PR)
🔥4👍3
#yiisoftDi #yiisoftFactory #yiisoftWidget #yiisoftYiiRunner #yiisoftYiiRunnerConsole #yiisoftYiiRunnerHttp #yiisoftYiiRunnerRoadrunner #yiisoftRbacRulesContainer #ПатчРелиз #Релиз

🎁 Yii Dependency Injection 1.0.3

• Улучшена производительность при получении объектов по тегу из композитного контейнера.

• Добавлена поддержка yiisoft/definitions версии ^2.0 (PR).


🎁 Yii Factory 1.0.1

• Добавлена поддержка yiisoft/definitions версии ^2.0 (PR).


🎁 Yii Widget 1.0.1

• Добавлена поддержка yiisoft/definitions версии ^2.0 (PR).

• В решение в дружественном исключении WidgetFactoryInitializationException добавлен пример инициализации WidgetFactory.


🎁 Yii Runner 1.1.1

• Добавлена поддержка yiisoft/definitions версии ^2.0 (PR).


🎁 Yii Console Runner 1.0.1

• Добавлена поддержка yiisoft/definitions версии ^2.0 (PR).


🎁 Yii HTTP Runner 1.0.1

• Добавлена поддержка yiisoft/definitions версии ^2.0 (PR).


🎁 Yii RoadRunner Runner 1.0.1

• Добавлена поддержка yiisoft/definitions версии ^2.0 (PR).


🎁 Yii RBAC Rules Container 1.0.1

• Добавлена поддержка yiisoft/definitions версии ^2.0 (PR).
🔥1
⚡️ #yiisoftFactory #yiisoftWidget #yiisoftRbacRulesContainer

В CI добавили Rector, применили предлагаемые изменения и подняли минимальную требуемую версию PHP до ^8.0 в пакетах:
- Yii Factory (PR),
- Yii Widget (PR),
- Yii RBAC Rules Container (PR, PR).
👏3
#yiisoftWidget #МинорныйРелиз #Релиз

🎁 Yii Widget 1.1.0

• Минимальная требуемая версия PHP увеличена до ^8.0.

• Добавлена поддержка yiisoft/html версии ^3.0 (PR).

• Добавлена поддержка yiisoft/definitions версии ^3.0 (PR).

• Исправлена опечатка в содержимом решения в дружественном исключении WidgetFactoryInitializationException (PR).
👍4
⚡️ #yiisoftWidget

В пакете Yii Widget обновили dev-зависимости:
- vimeo/psalm до ^4.30|^5.4 (PR),
- rector/rector до ^0.15.1 (PR).
👏2
⚡️ #yiisoftWidget

В Yii Widget в методах виджета run() и afterRun() добавили возможность возвращать Stringable-объект (PR).
👍3
⚡️ #yiisoftWidget

В Yii Widget сильно упростили абстрактный класс виджета Widget (PR).

• Удалены методы beforeRun(), afterRun() и run().

• Метод render() сделан абстрактным.

Реализация простейшего виджета теперь выглядит так:

use Stringable;
use Yiisoft\Widget\Widget;

final class MyWidget extends Widget
{
public function render(): string|Stringable
{
return 'My first widget.'.
}
}
👍4
⚡️ #yiisoftWidget

Доработали метод Widget::widget() в Yii Widget (PR). Теперь сигнатура метода выглядит следующим образом:

final public static function widget(
array $constructorArguments = [],
array $config = []
): static


$constructorArguments — аргументы, передаваемые в конструктор виджета.

$config — полноценная конфигурация виджета, синтаксис из Yii Definitions.

Одновременно два аргумента передавать нельзя, будет брошено исключение.
👍3
#yiisoftWidget #МажорныйРелиз #Релиз

🎁 Yii Widget 2.0

• Из класса Widget удалены методы beforeRun(), afterRun() и run(), вместо этого теперь необходимо реализовывать метод render(). Пример реализации виджета:

final class MyWidget extends \Yiisoft\Widget\Widget
{
public function render(): string
{
return 'My first widget.'.
}
}


• Изменены параметры метода Widget::widget():
- первый параметр — параметры, передаваемые в конструктор виджета;
- второй параметр — полноценная конфигурация виджета (см. синтаксис в Yii Definitions).

😎 Релиз подготовили Сергей Предводителев, Wilmer Arambula, Рустам Мамадаминов и Александр Макаров.
👍6
#yiisoftWidget #МинорныйРелиз #Релиз

🎁 Yii Widget 2.1

• Добавлена поддержка тем (подробнее тут).

• Исправлено некорректное объединение аргументов конструктора из конфигураций виджета, переданных через метод widget() и заданных в конфигурации WidgetFactory.
👍7🔥1
#yiisoftWidget #МинорныйРелиз #Релиз

🎁 Yii Widget 2.2

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

• Добавлена возможность указать в конфигурации тему по умолчанию для конкретного виджета.

• Исключение WidgetFactoryInitializationException помечено как устаревшее и будет удалено в следующей мажорной версии.
👍10👾3