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

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

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

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

Адаптировали пакет Yii Data Widgets к последним изменениям в Yii Router: заменили CurrentRouter на CurrentRouteInterface (PR).
Начали перераспределение классов из Yii Web.

#yiisoftYiiHttp

Создан новый пакет Yii HTTP Application, в который перенесены из пакета Yii Web классы (PR):

- Application,
- NotFoundHandler,
- Event\AfterEmit,
- Event\AfterRequest,
- Event\ApplicationShutdown,
- Event\ApplicationStartup,
- Event\BeforeRequest.

⚡️ #yiisoftYiiRunnerWeb #yiisoftYiiRunnerHttp

Пакет Yii Web Runner переименован в Yii HTTP Runner (yiisoft/yii-runner-http) и в него из пакета Yii Web перенесены классы (PR):

- SapiEmitter,
- ServerRequestFactory,
- Exception\HeadersHaveBeenSentException.

⚡️ #yiisoftYiiRunnerRoadrunner

В пакете Yii RoadRunner Runner зависимость от yiisoft/yii-web заменена на yiisoft/yii-http (PR).
⚡️ #yiisoftYiiRunnerRoadrunner #yiisoftYiiDebugViewer

В пакетах Yii RoadRunner Runner (PR) и Yii Debug Viewer (PR) увеличили версию yiisoft/error-handler до ^2.0.
⚡️ #yiisoftYiiDebugApi

Улучшения в Yii Debug API: обновили зависимости, актуализировали роуты и финализировали классы пакета (PR).
⚡️ #yiisoftValidator

В правиле Url из пакета Yii Validator исправлен паттерн для корректной работы валидации в HTML5 (PR).
⚡️ #yiisoftForm

В пакете Yii Form для правила Url при генерации HTML5 схемы сделаны регистронезависимыми (PR).
⚡️ #yiisoftYiiSwagger

В пакете Yii Swagger подняли версию зависимости swagger-api/swagger-ui до ^4.1 (PR).
⚡️ #yiisoftYiiCycle

Актуализировали ветку 2.0 в пакете Yii Cycle ORM в соответствии с последними изменениями в Cycle ORM, в частности конфигурирование с помощью DTO (PR).
⚡️ #yiisoftWidget

Доработали конфигурацию пакета Yii Widget (PR): теперь с помощью параметров можно изменить группу конфигурации для виджетов и включить/отключить валидацию конфигурации фабрики виджетов.
⚡️ #yiisoftYiiDebug #yiisoftYiiAuthClient #yiisoftYiiJquery #yiisoftLog #yiisoftProfiler

Удалили из зависимостей пакет Yii Web и, где требуется, добавили Yii HTTP Application в пакетах:

Yii Debug (PR),
Yii External Authentication (PR),
Yii jQuery (PR),
Yii Logging Library (PR),
Yii Profiler (PR).
#yiisoftYiiMiddleware

Создан новый пакет Yii Middleware, в который будут перенесены мидлвари из Yii Web, а сам Yii Web будет упразднён.
⚡️ #yiisoftConfig #yiisoftYiiRunnerRoadrunner #yiisoftYiiRunnerHttp #yiisoftYiiRunnerConsole #yiisoftYiiRunner

В Yii Config добавлена опция build-merge-plan в composer-плагине, позволяющая отключить автоматическое создание мёрж-плана (PR). Опция работает только для корневого пакета.

Пример:

"extra": {
"config-plugin-options": {
"build-merge-plan": false
}
},


Эта опция добавлена в раннерах:

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

В виджете Nav из пакета Yii Bootstrap 5 добавлены новые опции: activeClass, dropdownOptions, itemOptions, linkOptions (PR).
⚡️ #yiisoftYiiRunner #yiisoftYiiHttp #yiisoftYiiRunnerHttp #yiisoftYiiRunnerRoadrunner

Класс ThrowableHandler перенесён из пакета Yii Runner (PR) в пакет Yii HTTP Application (PR).

Необходимые изменения внесены в пакеты Yii HTTP Runner (PR) и Yii RoadRunner Runner (PR).
⚡️ #yiisoftDemo #yiisoftApp #yiisoftAppApi #yiisoftDemoApi

Доработали конфигурацию scrutinizer в приложениях (теперь устанавливается переменная окружения YII_ENV=test и работает сбор информации о покрытии кода тестами):

Шаблон веб-приложения (PR),
Демо веб-приложения (PR),
Шаблон API-приложения (PR),
Демо API-приложения (PR).
⚡️ #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.