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

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

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

Поддержать разработчиков:
https://opencollective.com/yiisoft
加入频道
#yiisoftYiiView #МажорныйРелиз #Релиз

🎁 Yii View Extension 4.0.0

Инъекция CSRF вместо токена теперь добавляет объект CSRF с методами (PR):

- getToken() возвращает токен;

- getParameterName() возвращает имя параметра из мидлвари CsrfMiddleware;

- getHeaderName() возвращает имя заголовка из мидлвари CsrfMiddleware;

- hiddenInput() возвращает тег Input с установленными атрибутами type (hidden), name (имя параметра), value (токен);

- __toString() для преобразования в строку (возвращается токен).

⚡️ #yiisoftDemo #yiisoftApp #yiisoftYiiSwagger

Соответствующие изменения внесены в демо веб-приложения (PR), шаблон веб-приложения и пакет Yii Swagger.
⚡️ #yiisoftYiiSwagger #yiisoftDemo #yiisoftDemoApi

В пакете Yii Swagger добавлена возможность конфигурирования SwaggerUI (PR).

По умолчанию включена параметр persistAuthorization. Полный список параметров доступен в документации Swagger.

Соответствующие изменения внесены в демо веб-приложения (PR) и демо API-приложения (PR).

Спасибо Алексею Черноусову за PR 👍
#yiisoftAssets #МажорныйРелиз #Релиз

🎁 Yii Assets 2.0.0

Изменили публичный API для более удобного использования.

Метод Yiisoft\Assets\AssetManager::register() в качестве первого аргумента теперь принимает только один класс бандла. Для регистрации одновременно нескольких классов добавлен новый метод Yiisoft\Assets\AssetManager::registerMany() (PR).

—————

⚡️ #yiisoftDemo #yiisoftApp #yiisoftYiiJquery #yiisoftView #yiisoftYiiDebug #yiisoftYiiBootstrap5 #yiisoftYiiSwagger #yiisoftYiiAuthClient #yiisoftYiiBulma

Внесены соответствующие изменения в пакеты и приложения:

Демо веб-приложения (PR)
Шаблон веб-приложения (PR)
Yii jQuery (PR)
Yii View (PR)
Yii Debug (PR)
Yii Bootstrap 5 (PR)
Yii Swagger (PR)
Yii External Authentication (PR)
Yii Bulma (PR, PR)
⚡️ #yiisoftYiiSwagger

Актуализировали конфигурацию пакета Yii Swagger (PR).
⚡️ #yiisoftYiiSwagger

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

🎁 Yii CSRF Protection Library 1.2.0

• Добавлена возможность задать свой обработчик для запроса, не прошедшего проверку CSRF-токена (PR).

• Версия зависимости yiisoft/http изменена на ^1.2.

—————

#yiisoftYiiView #ПатчРелиз #Релиз

🎁 Yii View Extension 4.0.2

• Версия зависимости yiisoft/csrf изменена на ^1.2 (PR).

—————

⚡️ #yiisoftDemo #yiisoftApp #yiisoftYiiSwagger

Версия зависимости yiisoft/csrf также изменена на ^1.2 в пакетах и приложениях:

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

Изменили способ конфигурирования контейнера в Yii Dependency Injection: теперь вместо передачи нескольких параметров (дефинишены, делегаты и др.) в конструктор передаётся реализация интерфейса ContainerConfigInterface, позволяющая получить конфигурацию контейнера (PR).

Пример:

$config = ContainerConfig::create()
->withDefinitions($definitions)
->withProviders($providers)
->withTags($tags)
->withValidate(false)
->withDelegates($delegates);
$container = new Container($config);


⚡️ #yiisoftDocs #yiisoftYiiJquery #yiisoftInjector #yiisoftYiiAuthClient #yiisoftLogTargetDb #yiisoftYiiDebugViewer #yiisoftTranslatorMessageDb #yiisoftYiiDbMigration #yiisoftYiiDebug #yiisoftYiiBootstrap5 #yiisoftTranslatorExtractor #yiisoftYiiDataview #yiisoftYiiSwagger #yiisoftYiiRunnerConsole #yiisoftAppApi #yiisoftYiiRunnerRoadrunner #yiisoftYiiGii #yiisoftYiiRunnerHttp #yiisoftApp #yiisoftDemo

Соответствующие изменения внесены в документацию (PR), приложения и пакеты:

Yii jQuery (PR),
Yii Injector (PR),
Yii External Authentication (PR),
Yii Logging DB Target (PR),
Yii Debug Viewer (PR),
Yii Translator DB Message Storage (PR),
Yii DB Migration (PR),
Yii Debug (PR),
Yii Bootstrap 5 (PR),
Yii Message Extractor (PR),
Yii Data Widgets (PR),
Yii Swagger (PR),
Yii Console Runner (PR),
Yii RoadRunner Runner (PR),
Yii HTTP Runner (PR),
Gii (PR),
Шаблон API-приложения (PR),
Шаблон веб-приложения (PR),
Демо веб-приложения (PR).
⚡️ #yiisoftYiiSwagger

Актуализировали пакет Yii Swagger (PR, PR):

• финализировали класс SwaggerUiAsset,
• убрали поддержку PHP 7.4 (теперь минимальная версия 8.0),
• переехали на кэш Yii Cache,
• подчистили код,
• причесали все служебные файлы,
• настроили процессы GitHub Actions.
⚡️ #yiisoftYiiSwagger

Небольшое улучшение публичного API в Yii Swagger: метод SwaggerJson::withAnnotationPaths() теперь принимает не массив путей, а переменное количество параметров (PR).

⚡️ #yiisoftDemo #yiisoftDemoApi #yiisoftAppApi

Соответствующие изменения внесены в приложения:

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

В пакете Yii Swagger подняли версию зависимости zircote/swagger-php до ^4.0 (PR).
⚡️ #yiisoftYiiSwagger

В пакете Yii Swagger исправлена ошибка, возникающая при включении кэширования (PR).
#yiisoftYiiSwagger #ПервыйРелиз #МажорныйРелиз #Релиз

🎁 Yii Swagger 1.0.0

Интеграция Swagger-PHP c Yii3, позволяющая генерировать интерактивную документацию OpenAPI на основании аннотаций, например:

/**
* @OA\Get(
* path="/api/endpoint",
* @OA\Response(response="200", description="Get default action")
* )
*/
public function process(
ServerRequestInterface $request,
RequestHandlerInterface $handler
): ResponseInterface
{
// ...
}
#yiisoftYiiSwagger #МинорныйРелиз #Релиз

🎁 Yii Swagger 1.1.0

Добавлена возможность конфигурирования Yii\Swagger\Middleware\SwaggerJson через config/params.php (PR).

Пример конфигурации:

'yiisoft/yii-swagger' => [
// Директории, где будут использоваться аннотации
'annotation-paths' => [
'@src/Controller'
],
// Включает кэширование и устанавливает TTL, "null" означает "вечный" кэш
'cacheTTL' => 60
]

—————

⚡️ #yiisoftDemo #yiisoftDemoApi #yiisoftAppApi

Соответствующие изменения внесены в приложения:

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

В пакете Yii Swagger в сервисе \Yiisoft\Swagger\Service\SwaggerService добавлен метод withOptions(), позволяющий задать конфигурацию объекта \OpenApi\Annotations\OpenAPI создаваемого этим сервисом (PR, PR).