⚡️ #yiisoftDi
Изменили способ конфигурирования контейнера в Yii Dependency Injection: теперь вместо передачи нескольких параметров (дефинишены, делегаты и др.) в конструктор передаётся реализация интерфейса
Пример:
⚡️ #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).
Изменили способ конфигурирования контейнера в 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).
⚡️ #yiisoftYiiDataview
В пакете Yii Data Widgets удалена неиспользуемая категория сообщений для перевода (PR).
В пакете Yii Data Widgets удалена неиспользуемая категория сообщений для перевода (PR).
⚡️ #yiisoftRouter
Готовим Yii Router к релизу: подняли уровень psalm до 1 (PR) и удалили интерфейсы
Удалённые интерфейсы вводились для разделения контекстов использования (конфигурирование и получение данных), но практика показала, что это было неудачное решение (типизация по факту некорректная + интерфейсы вводят в заблуждение). Но, чтобы всё-таки повысить удобство публичного API, мы объединили методы, которые требуются только внутри пакета, и пометили их как
• в классе
• в классе
• в классе
• метод
—————
⚡️ #yiisoftRouterFastroute #yiisoftRequestModel #yiisoftYiiDebugApi #yiisoftYiiDataview #yiisoftDocs #yiisoftDemo #yiisoftApp #yiisoftDemoApi
Соответствующие изменения были внесены в документацию (PR), приложения и пакеты:
- Yii Router FastRoute Adapter (PR),
- Yii Request Model (PR, PR),
- Yii Debug API (PR),
- Yii Data Widgets (PR),
- Шаблон веб-приложения (PR),
- Демо веб-приложения (PR),
- Демо API-приложения (PR).
Готовим Yii Router к релизу: подняли уровень psalm до 1 (PR) и удалили интерфейсы
CurrentRouteInterface.php
, GroupInterface
, RouteInterface
, RouteParametersInterface
(PR).Удалённые интерфейсы вводились для разделения контекстов использования (конфигурирование и получение данных), но практика показала, что это было неудачное решение (типизация по факту некорректная + интерфейсы вводят в заблуждение). Но, чтобы всё-таки повысить удобство публичного API, мы объединили методы, которые требуются только внутри пакета, и пометили их как
@internal
:• в классе
Route
методы getDispatcherWithMiddlewares()
, getName()
, getMethods()
, getPattern()
, getHost()
, isOverride()
, getDefaults()
, hasMiddlewares()
, getDispatcherWithMiddlewares()
объединены в один getData()
;• в классе
Group
методы getCorsMiddleware()
, hasCorsMiddleware()
, getMiddlewareDefinitions()
, getItems()
, getPrefix()
, getNamePrefix()
, getHost()
объединены в один getData()
;• в классе
CurrentRoute
методы setRoute()
и setArguments()
объединены в один setRouteWithArguments()
;• метод
CurrentRoute::setUri()
также помечен как @internal
.—————
⚡️ #yiisoftRouterFastroute #yiisoftRequestModel #yiisoftYiiDebugApi #yiisoftYiiDataview #yiisoftDocs #yiisoftDemo #yiisoftApp #yiisoftDemoApi
Соответствующие изменения были внесены в документацию (PR), приложения и пакеты:
- Yii Router FastRoute Adapter (PR),
- Yii Request Model (PR, PR),
- Yii Debug API (PR),
- Yii Data Widgets (PR),
- Шаблон веб-приложения (PR),
- Демо веб-приложения (PR),
- Демо API-приложения (PR).
⚡️ #yiisoftYiiDataview
В пакете Yii Data Widgets в виджетах
В пакете Yii Data Widgets в виджетах
LinkSorter
и LinkPager
сделали небольшой рефакторинг и выделили в отдельное свойство GET-параметры для генерации ссылок (PR).⚡️ #yiisoftYiiDataview #yiisoftDemo
Улучшили виджеты
• Добавили возможность отдельно задавать атрибуты роута и GET-параметры, если они не указаны, то будут использованы соответствующие данные из текущего роута.
• Добавили возможность изменить шаблон в
• Добавили возможность использовать аргумент роута в качестве текущей страницы.
Добавили пример использования Yii Data Widgets в демо веб-приложения (PR).
Улучшили виджеты
LinkSorter
и LinkPager
в Yii Data Widgets (PR):• Добавили возможность отдельно задавать атрибуты роута и GET-параметры, если они не указаны, то будут использованы соответствующие данные из текущего роута.
• Добавили возможность изменить шаблон в
LinkPager
, что позволит создавать сложные макеты пагинации.• Добавили возможность использовать аргумент роута в качестве текущей страницы.
Добавили пример использования Yii Data Widgets в демо веб-приложения (PR).
👍2
⚡️ #yiisoftYiiDataview
Сделали много доработок в Yii Data Widgets:
• Активная страница в вижете
• У виджета
• У
… и множество других изменений, подробнее в PR.
Сделали много доработок в Yii Data Widgets:
• Активная страница в вижете
LinkPager
теперь может одновременно быть активной (active
) и отключенной (disabled
).• У виджета
LinkPager
добавлена опция hideFirstPageParameter
для удаления из ссылки на первую страницу аргумента с номером страницы.• У
ActionColumn
добавлены новые опции primaryKeyName
, idInQueryString
, arguments
и queryParameters
.… и множество других изменений, подробнее в 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)
Продолжаем заменять рабочие процессы на переиспользуемые из 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
⚡️ #yiisoftYiiDataview
В Yii Data Widgets подняли требуемую версию
В Yii Data Widgets подняли требуемую версию
yiisoft/view
до ^5.0|^6.0
, убрали использование устаревших методов в коде и исправили опечатку в конфигурации CI-процесса build
(PR).🔥2
⚡️ #yiisoftYiiDataview
Выполнили большой рефакторинг, практически переписали весь код, в Yii Data Widgets (PR).
Выполнили большой рефакторинг, практически переписали весь код, в Yii Data Widgets (PR).
🔥5👍1
⚡️ #yiisoftYiiDataview
В Yii Data Widgets исправили ошибку в виджете
В Yii Data Widgets исправили ошибку в виджете
OffsetPagination
, возникающую в случае, когда нет страниц (PR).👍4
⚡️ #yiisoftYiiDataview #yiisoftDemo
Несколько улучшений в Yii Data Widgets.
• Установку генератора URL в виджетах
• Добавили тесты для случаев, когда нет пагинации + сделали мелкие улучшения в коде (PR).
Соответствующие изменения внесли в демо веб-приложения (PR).
Несколько улучшений в Yii Data Widgets.
• Установку генератора URL в виджетах
BaseListView
, BasePagination
и LinkSorter
перенесли из отдельного метода в конструктор (PR).• Добавили тесты для случаев, когда нет пагинации + сделали мелкие улучшения в коде (PR).
Соответствующие изменения внесли в демо веб-приложения (PR).
👍2
⚡️ #yiisoftYiiDataview #yiisoftDemo
В виджетах Yii Data Widgets текущий роут теперь определяется автоматически с помощью зависимости
Соответствующие изменения внесли в демо веб-приложения (PR).
В виджетах Yii Data Widgets текущий роут теперь определяется автоматически с помощью зависимости
CurrentRoute
(PR).Соответствующие изменения внесли в демо веб-приложения (PR).
👍2
⚡️ #yiisoftYiiDataview #yiisoftDemo
В Yii Data Widgets добавили возможность локализации строк в виджетах, наследуемых от
Соответствующие изменения внесли в демо веб-приложения (PR).
В Yii Data Widgets добавили возможность локализации строк в виджетах, наследуемых от
BaseListView
(PR).Соответствующие изменения внесли в демо веб-приложения (PR).
🔥3
⚡️ #yiisoftYiiDataview #yiisoftDemo
В Yii Data Widgets добавили класс
Соответствующие изменения внесли в демо веб-приложения (PR).
В Yii Data Widgets добавили класс
DataField
, который используется в качестве полей в виджете DetailView
, а также сделали небольшой рефакторинг кода (PR).Соответствующие изменения внесли в демо веб-приложения (PR).
👍4🔥1
⚡️ #yiisoftYiiDataview #yiisoftDemo
В Yii Data Widgets метод
Соответствующие изменения внесли в демо веб-приложения (PR).
В Yii Data Widgets метод
GridView::columns()
вместо массива теперь принимает список аргументов переменной длины (PR).Соответствующие изменения внесли в демо веб-приложения (PR).
🔥3
⚡️ #yiisoftYiiDataview #yiisoftYiiGii #yiisoftRequestModel
Добавили поддержку
- Yii Data Widgets (PR),
- Gii (PR),
- Yii Request Model (PR).
Добавили поддержку
yiisoft/router
версии ^2.0
в пакетах:- Yii Data Widgets (PR),
- Gii (PR),
- Yii Request Model (PR).
👍2
⚡️ #yiisoftValidator #yiisoftYiiDataview
Адаптировали пакеты к актуальной версии Yii Translator:
- Yii Validator (PR),
- Yii Data Widgets (PR).
Адаптировали пакеты к актуальной версии Yii Translator:
- Yii Validator (PR),
- Yii Data Widgets (PR).
👍2
⚡️ #yiisoftYiiDataview
В пакете Yii Data Widgets обновили dev-зависимости:
-
-
В пакете Yii Data Widgets обновили dev-зависимости:
-
vimeo/psalm
до ^4.30|^5.2
и roave/infection-static-analysis-plugin
до ^1.25
(PR);-
rector/rector
до ^0.15.0
(PR).👍2
👍3
⚡️ #yiisoftForm #yiisoftYiiBootstrap5 #yiisoftYiiDataview
Подняли минимальную версию зависимости
- Yii Form (PR),
- Yii Bootstrap 5 (PR),
- Yii Data Widgets (PR).
Подняли минимальную версию зависимости
yiisoft/html
до ^3.0
и адаптировали к ней код в пакетах:- Yii Form (PR),
- Yii Bootstrap 5 (PR),
- Yii Data Widgets (PR).
👍3