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

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

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

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

🎁 Yii Factory 1.0.0

Пакет предоставляет фабрику, позволяющую создавать объекты по заранее заданным определениям (см. синтаксис в Yii Definitions) с разрешением зависимостей через PSR-11 контейнер.

Пример использования:

$container = new PSR11DependencyInjectionContainer();
$factoryConfig = [
EngineInterface::class => [
'class' => EngineMarkOne::class,
'__construct()' => [
'power' => 42,
],
]
];

$factory = new Factory($container, $factoryConfig);

$one = $factory->create(EngineInterface::class);
$two = $factory->create([
'class' => EngineInterface::class,
'__construct()' => [
'power' => 146,
],
]);


—————-

Перед релизом было внесено несколько изменений:

• контейнер стал обязательным + немного переработали и оптимизировали логику создания объектов и разрешения зависимостей (PR),

• фабрика стала полностью иммутабельной: методы set() и setMultiple() удалены, вместо них добавлен новый метод withDefinitions() (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
#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
#yiisoftFactory #МинорныйРелиз #Релиз

В CI пакета добавили проверку транзитивных зависимостей (PR) и сделали минорный релиз.

🎁 Yii Factory 1.1.0

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

• Добавлена поддержка yiisoft/definitions версии ^3.0.1 (PR).
👏3
#yiisoftFactory #МинорныйРелиз #Релиз

🎁 Yii Factory 1.2

• Добавлена возможность использовать фабрику без контейнера.
👍5👾2
#yiisoftFactory #МинорныйРелиз #Релиз

🎁 Yii Factory 1.3

• Добавлена «строгая» фабрика StrictFactory, которая позволяет создать экземпляры только тех объектов, для которых явно прописаны их определения (дефинишены).
👍5👾1