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

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

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

Поддержать разработчиков:
https://opencollective.com/yiisoft
加入频道
⚡️ #yiisoftDemo #yiisoftPackageTemplate

В демо веб-приложения исправили проблему с падением тестов в Windows: в конфигурации build GitHub Actions включили опцию, позволяющую использовать в тестах последнюю версию PHP (PR).

Аналогичное изменение внесли в шаблон пакетов Yii Package Template (PR).
⚡️ #yiisoftYiiMiddleware #yiisoftYiiWeb #yiisoftDemo #yiisoftApp #yiisoftAppApi #yiisoftDemoApi

• Перенесли мидлвари из Yii Web в пакет Yii Middleware (PR).

• Пакет Yii Web помечен как устаревший и дальше развиваться не будет.

• В приложениях заменили Yii Web на Yii Middleware:

Шаблон веб-приложения (PR),
Шаблон API-приложения (PR),
Демо веб-приложения (PR),
Демо API-приложения (PR).
⚡️ #yiisoftHtml

Добавили новые классы тегов в пакете Yii HTML:
- Title (PR),
- H1, H2, H3, H4, H5, H6 (PR).
⚡️ #yiisoftView

В пакете Yii View добавили новые методы View::addToParameter() и WebView::addToParameter(), которые позволяют добавить новый элемент к параметру, являющемся массивом (PR).

Новые методы удобно использовать, например, для «хлебных крошек»:

// Добавить крошки в представлении
$this->addToArrayParameter('breadcrumbs', $item1, $item2);
#yiisoftLog #yiisoftProfiler #ПатчРелиз #Релиз

🎁 Yii Logging Library 1.0.3
🎁 Yii Profiler 1.0.1

В конфигурации events-web заменили устаревшее событие Yiisoft\Yii\Web\Event\AfterEmit на актуальное Yiisoft\Yii\Http\Event\AfterEmit.
⚡️ #yiisoftYiiDebugApi

В пакете Yii Debug API заменили использование устаревшего пакета Yii Web на актуальный Yii Middleware, а также доработали конфигурации GitHub Actions и scrutinizer (PR).
⚡️ #yiisoftSession

Мелкие правки в Yii Session (PR): исправили ошибки psalm и конфигурацию процесса мутационного тестирования, немного улучшили doc-блоки и обновили dev-зависимости.
⚡️ #yiisoftDefinitions #yiisoftFactory #yiisoftDi

Дефинишены, фабрика и контейнер всё ближе к релизу.

• В Yii Factory добавили документацию в readme и описания в doc-блоках.

• В Yii Definitions актуализировали readme и подчистили код.

• Перенесли класс DefinitionStorage из Yii Dependency Injection (PR) в Yii Definitions (PR).

• В тестах Yii Dependency Injection обновили версию league/container до ^4.2 (PR).
⚡️ #yiisoftDemoApi

В демо API-приложения внесены правки для корректной работы тестов в докере (PR).
⚡️ #yiisoftYiiRunnerHttp #yiisoftYiiRunnerRoadrunner #yiisoftYiiRunnerConsole

В раннерах добавлены/улучшены описания в doc-блоках:

Yii HTTP Runner (PR),
Yii RoadRunner Runner (PR),
Yii Console Runner (PR).
⚡️ #yiisoftConfig

В пакете Yii Config актуализировали примеры в readme и doc-блоках: заменили устаревший пакет yiisoft/yii-web на yiisoft/view (PR).
⚡️ #yiisoftDi #yiisoftFactory #yiisoftDefinitions

Продолжается работа на тройкой пакетов: контейнер, фабрика и дефинишены.

• Расширения в Yii Dependency Injection, возвращающие null, теперь игнорируются при получении сервиса из контейнера (PR).

• В Yii Definitions (PR) удалено исключение NotFoundException, а в Yii Dependency Injection (PR) и Yii Factory (PR) добавлены индивидуальные исключения NotFoundException.

• В пакете Yii Definitions удалён класс ArrayDefinitionBuilder, его функционал перенесён в класс ArrayDefinition (PR).

• В методе DefinitionResolver::resolveArray() (пакет Yii Definitions) параметр $dependencies переименован в $definitions (PR).

• Доработана документация в Yii Dependency Injection, в частности добавлено описание делегатов (PR).
⚡️ #yiisoftYiiRunnerHttp

Из класса HttpApplicationRunner (пакет Yii HTTP Runner) убрали использование Psr\Http\Message\RequestInterface (PR).
⚡️ #yiisoftApp #yiisoftAppApi #yiisoftDemo #yiisoftDemoApi

В приложениях удалили класс ThrowableHandler (он не нужен, так как уже используется ThrowableHandler из пакета Yii HTTP Application):

Шаблон веб-приложения (PR),
Шаблон API-приложения (PR),
Демо веб-приложения (PR),
Демо API-приложения (PR).
⚡️ #yiisoftMailerSymfony

Улучшили конфигурацию пакета Yii Mailer Symfony Mailer Extension: теперь можно передавать дополнительные опции в EsmtpTransport (PR).
⚡️ #yiisoftYiiHttp

В пакете Yii HTTP Application добавили описание и пример использования в readme, а также добавили doc-блоки в классе Application (PR).
⚡️ #yiisoftYiiMiddleware

Несколько улучшений в Yii Middleware (PR):

• уровень psalm увеличен до 2;

• добавлены/улучшены doc-блоки;

• добавлены новые тесты.
⚡️ #yiisoftDi #yiisoftFactory #yiisoftDefinitions

Несколько изменений в Yii Definitions:

• Методы класса DefinitionExtractor в Yii Definitions сделаны статическими (PR).

• Изменили пространства имён в Yii Definitions (PR):
- Yiisoft\Definitions\Infrastructure\Yiisoft\Definitions\Helpers\;
- Yiisoft\Definitions\Infrastructure\DefinitionStorageYiisoft\Definitions\Helpers\DefinitionStorage.

Соответствующие изменение внесены в Yii Dependency Injection (PR) и Yii Factory (PR).
⚡️ #yiisoftYiiMiddleware

В классе TrustedHostsNetworkResolver (пакет Yii Middleware) улучшены сообщения об ошибках и выполнен небольшой рефакторинг (PR),
⚡️ #yiisoftYiiCycle

В Yii Cycle ORM исправлена ошибка: AttributedSchemaConveyor вместо AttributeReader использовал AnnotationReader (PR в мастер, PR в ветку 2.0).
⚡️ #yiisoftYiiQueueAmqp

В Yii Queue AMQP Driver добавили название и бейджи в readme (PR) и обновили dev-зависимости (PR, PR).