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

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

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

Поддержать разработчиков:
https://opencollective.com/yiisoft
加入频道
#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).
#yiisoftYiiSwagger #МинорныйРелиз #Релиз

🎁 Yii Swagger 1.2.0

• В сервисе \Yiisoft\Swagger\Service\SwaggerService добавлен метод withOptions(), позволяющий задать конфигурацию объекта \OpenApi\Annotations\OpenAPI создаваемого этим сервисом. Конфигурация объекта OpenAPI также доступна через параметры пакета в config/params.php:

'yiisoft/yii-swagger' => [
// Default values are specified.
'open-api-options' => [
'aliases' => OpenApi\Generator::DEFAULT_ALIASES,
'namespaces' => OpenApi\Generator::DEFAULT_NAMESPACES,
'analyser' => null,
'analysis' => null,
'processors' => null,
'logger' => null,
'validate' => true,
'version' => OpenApi\Annotations\OpenApi::DEFAULT_VERSION,
],
],
//...
⚡️ #yiisoftYiiSwagger

Исправили ссылку на документацию Swagger-PHP в readme пакета Yii Swagger (PR).
⚡️ #yiisoftAccess #yiisoftErrorHandler #yiisoftEventDispatcher #yiisoftFactory #yiisoftHttp #yiisoftI18n #yiisoftAliases #yiisoftJson #yiisoftProfiler #yiisoftInjector #yiisoftMailerSymfony #yiisoftMutex #yiisoftRateLimiter #yiisoftNetworkUtilities #yiisoftSession #yiisoftRouter #yiisoftStrings #yiisoftRouterFastroute #yiisoftRequestBodyParser #yiisoftTranslatorMessageGettext #yiisoftTranslatorExtractor #yiisoftTranslatorFormatterSimple #yiisoftTranslator #yiisoftTranslatorFormatterIntl #yiisoftTranslatorMessageDb #yiisoftUser #yiisoftVarDumper #yiisoftViewTwig #yiisoftYiiEvent #yiisoftTranslatorMessagePhp #yiisoftDataResponse #yiisoftCacheFile #yiisoftCookies #yiisoftCsrf #yiisoftAssets #yiisoftAuthJwt #yiisoftLog #yiisoftArrays #yiisoftYiiFilesystem #yiisoftYiiHttp #yiisoftYiiRunnerHttp #yiisoftLogTargetFile #yiisoftLogTargetEmail #yiisoftYiiRunnerRoadrunner #yiisoftSecurity #yiisoftYiiSwagger #yiisoftYiiSentry #yiisoftMutexFile #yiisoftMiddlewareDispatcher #yiisoftTestSupport #yiisoftYiiDebug #yiisoftYiiDebugViewer #yiisoftCacheApcu #yiisoftYiiDataview #yiisoftLogTargetSyslog #yiisoftAuth #yiisoftDefinitions #yiisoftRbacPhp #yiisoftDataDb #yiisoftData #yiisoftRequestModel #yiisoftDi #yiisoftConfig #yiisoftRbacRulesContainer

Продолжаем заменять рабочие процессы на переиспользуемые из Yii GitHub Actions:

- Yii Access (PR)
- Yii Error Handler (PR)
- Yii Event Dispatcher (PR)
- Yii Factory (PR)
- Yii HTTP (PR)
- Yii Internationalization Library (PR)
- Yii Aliases (PR)
- Yii JSON (PR)
- Yii Profiler (PR)
- Yii Injector (PR)
- Yii Mailer Symfony Mailer Extension (PR)
- Yii Mutex (PR)
- Yii Rate Limiter Middleware (PR)
- Yii Network Utilities (PR)
- Yii Session (PR)
- Yii Router (PR)
- Yii Strings (PR)
- Yii Router FastRoute Adapter (PR)
- Yii Request Body Parser (PR)
- Yii Translator gettext Message Storage (PR)
- Yii Message Extractor (PR)
- Yii Translator Simple Message Formatter (PR)
- Yii Message Translator (PR)
- Yii Translator intl Message Formatter (PR)
- Yii Translator DB Message Storage (PR)
- Yii User (PR)
- Yii VarDumper (PR)
- Yii View Twig Renderer (PR)
- Yii Event (PR)
- Yii Translator PHP Message Storage (PR)
- Yii Data Response (PR)
- Yii Cache File Handler (PR)
- Yii Cookies (PR)
- Yii CSRF Protection Library (PR)
- Yii Assets (PR)
- Yii Auth JWT (PR)
- Yii Logging Library (PR)
- Yii Arrays (PR)
- Yii Filesystem (PR)
- Yii HTTP Application (PR)
- Yii HTTP Runner (PR)
- Yii Logging File Target (PR)
- Yii Logging Email Target (PR)
- Yii RoadRunner Runner (PR)
- Yii Security (PR)
- Yii Swagger (PR)
- Yii Sentry (PR)
- Yii Mutex File Driver (PR)
- Yii Middleware Dispatcher (PR)
🤯6👍5
#yiisoftYiiSwagger #ПатчРелиз #Релиз

🎁 Yii Swagger 1.2.1

• Добавлена поддержка yiisoft/yii-view версии ^5.0 (PR).
⚡️ #yiisoftYiiSwagger

В пакете Yii Swagger добавили поддержку yiisoft/cache версии ^2.0 (PR).
#yiisoftYiiSwagger #ПатчРелиз #Релиз

🎁 Yii Swagger 1.2.2

Обновили версию dev-зависимости yiisoft/test-support до версии ^2.0 (PR) и сделали патч-релиз.

• Добавлена поддержка yiisoft/cache версии ^2.0.
⚡️ #yiisoftValidator #yiisoftYiiSentry #yiisoftYiiSwagger #yiisoftYiiRunnerRoadrunner #yiisoftYiiRunnerHttp #yiisoftYiiRunnerConsole #yiisoftYiiHttp #yiisoftYiiRunner

В GitHub Actions добавили конфигурацию для запуска Rector и применили предлагаемые изменения:

- Yii Validator (PR),
- Yii Sentry (PR),
- Yii Swagger (PR),
- Yii RoadRunner Runner (PR),
- Yii HTTP Runner (PR),
- Yii Console Runner (PR),
- Yii HTTP Application (PR),
- Yii Runner (PR).
🔥4