#yiisoftCacheRedis #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii Cache Redis Handler 1.0.0
Первый релиз PSR-16 обработчика кэша для Yii Caching Library на основе Redis.
Реализация основана на redis-клиенте Predis и может использовать как реализация PSR-16 кэша самостоятельно или с Yii Caching Library.
🎁 Yii Cache Redis Handler 1.0.0
Первый релиз PSR-16 обработчика кэша для Yii Caching Library на основе Redis.
Реализация основана на redis-клиенте Predis и может использовать как реализация PSR-16 кэша самостоятельно или с Yii Caching Library.
#yiisoftMiddlewareDispatcher #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii Middleware Dispatcher 1.0.0
Реализация PSR-15 диспетчера мидлварей. Используя объект запроса диспетчер выполняет заданный набор мидлварей и создаёт экземпляр объекта ответа.
Пример:
🎁 Yii Middleware Dispatcher 1.0.0
Реализация PSR-15 диспетчера мидлварей. Используя объект запроса диспетчер выполняет заданный набор мидлварей и создаёт экземпляр объекта ответа.
Пример:
use Yiisoft\Middleware\Dispatcher\MiddlewareDispatcher;
use Yiisoft\Middleware\Dispatcher\MiddlewareFactory;
$dispatcher = new MiddlewareDispatcher(
new MiddlewareFactory($diContainer),
$eventDispatcher
)->withMiddlewares([
static function (): ResponseInterface {
return new Response(418);
},
]);
$request = new ServerRequest('GET', '/teapot');
$response = $dispatcher->dispatch($request, $this->getRequestHandler());
⚡️ #yiisoftApp #yiisoftAppApi #yiisoftDemo #yiisoftDemoApi
Основной набор мидлварей в приложениях вынесен в параметры:
Шаблон веб-приложения (PR),
Шаблон API-приложения (PR),
Демо веб-приложения (PR),
Демо API-приложения (PR).
Основной набор мидлварей в приложениях вынесен в параметры:
Шаблон веб-приложения (PR),
Шаблон API-приложения (PR),
Демо веб-приложения (PR),
Демо API-приложения (PR).
⚡️ #yiisoftCache
Немного подчистили Yii Caching Library (PR): улучшили readme, конфигурации GitHub Actions, doc-блоки и прочие мелкие улучшения.
Немного подчистили Yii Caching Library (PR): улучшили readme, конфигурации GitHub Actions, doc-блоки и прочие мелкие улучшения.
⚡️ #yiisoftYiiDevTool
Убрали добавление лишней пустой строки при подготовке changelog в Yii Development Tool (PR).
Убрали добавление лишней пустой строки при подготовке changelog в Yii Development Tool (PR).
⚡️ #yiisoftYiiCycle
В Yii Cycle ORM добавлена поддержка пакета
В Yii Cycle ORM добавлена поддержка пакета
cycle/schema-renderer
для генерации схемы (PR).#yiisoftYiiWeb #yiisoftHttp #МинорныйРелиз #yiisoftErrorHandler #МажорныйРелиз #Релиз
🎁 Yii HTTP 1.2.0
🎁 Yii Error Handler 2.0.0
Хелперы для работы преобразования строки с заголовками в более удобные для работы массивы перенесены из пакетов Yii Web (PR) и Yii Error Handler (PR) в пакет Yii HTTP (PR).
Примеры использования:
Соответствующие изменения внесены в пакеты и приложения:
Шаблон веб-приложения (PR),
Шаблон API-приложения (PR),
Демо веб-приложения (PR),
Демо API-приложения (PR),
Yii Auth (PR),
Yii Request Body Parser (PR),
Yii Data Response (PR),
Yii CSRF Protection Library (PR),
Yii Rate Limiter Middleware (PR),
Yii Cookies (PR),
Yii Web Runner (PR).
🎁 Yii HTTP 1.2.0
🎁 Yii Error Handler 2.0.0
Хелперы для работы преобразования строки с заголовками в более удобные для работы массивы перенесены из пакетов Yii Web (PR) и Yii Error Handler (PR) в пакет Yii HTTP (PR).
Примеры использования:
use Yiisoft\Http\HeaderValueHelper;#yiisoftApp #yiisoftAppApi #yiisoftDemo #yiisoftDemoApi #yiisoftAuth #yiisoftRequestBodyParser #yiisoftDataResponse #yiisoftCsrf #yiisoftRateLimiter #yiisoftCookies #yiisoftYiiRunnerWeb
// Result: ['a' => '1', 'b' => '2']
HeaderValueHelper::getParameters('a=1;b=2');
// Result: ['value', 'a' => '1', 'b' => '2']
HeaderValueHelper::getValueAndParameters('value;a=1;b=2'));
// Result: [['value2', 'q' => 1.0], ['value1', 'q' => 0.2]]
HeaderValueHelper::getSortedValueAndParameters('value1;q=0.2,value2'));
// Result: ['text/xml', 'text/html']
HeaderValueHelper::getSortedAcceptTypes('text/html;q=0.2,text/xml;q=0.4'));
⚡️
Соответствующие изменения внесены в пакеты и приложения:
Шаблон веб-приложения (PR),
Шаблон API-приложения (PR),
Демо веб-приложения (PR),
Демо API-приложения (PR),
Yii Auth (PR),
Yii Request Body Parser (PR),
Yii Data Response (PR),
Yii CSRF Protection Library (PR),
Yii Rate Limiter Middleware (PR),
Yii Cookies (PR),
Yii Web Runner (PR).
⚡️ #yiisoftYiiRunnerWeb #yiisoftYiiRunnerRoadrunner
В раннерах Yii Web Runner (PR) и Yii RoadRunner Runner (PR) добавлена возможность задать свой обработчик ошибок с помощью методов
В раннерах Yii Web Runner (PR) и Yii RoadRunner Runner (PR) добавлена возможность задать свой обработчик ошибок с помощью методов
WebApplicationRunner::withTemporaryErrorHandler()
и RoadRunnerApplicationRunner::withTemporaryErrorHandler()
соответственно.⚡️ #yiisoftConfig
Несколько улучшений в Yii Config (PR).
——————
• В модификаторе
Удалить элементы
• Добавлен новый модификатор
Удалить группу
Несколько улучшений в Yii Config (PR).
——————
• В модификаторе
RemoveFromVendor::keys()
добавлена возможность указать пакет(ы) и группы, на которые будет распространяться этот модификатор.Удалить элементы
a
и b
из всех групп в пакете yiisoft/auth
:RemoveFromVendor::keys(['a'], ['b'])Удалить элементы
->package('yiisoft/auth'),
c
и d
из групп params
и web
в пакете yiisoft/yii-web
:RemoveFromVendor::keys(['c'], ['d'])Удалить элементы
->package('yiisoft/yii-web', 'params', 'web'),
e
и f
из всех групп в пакете yiisoft/auth
и из групп params
и web
в пакете yiisoft/yii-web
:RemoveFromVendor::keys(['e'], ['f'])——————
->package('yiisoft/auth')
->package('yiisoft/yii-web', 'params', 'web'),
• Добавлен новый модификатор
RemoveFromVendor::groups()
, позволяющий исключить из конфигурации группы и пакеты.Удалить группу
params
из всех пакетов:RemoveFromVendor::groups([Удалить группы
'*' => 'params',
]),
common
и web
из всех пакетов:RemoveFromVendor::groups([Удалить все группы из пакета
'*' => ['common', 'web'],
]),
yiisoft/auth
:RemoveFromVendor::groups([Удалить группу
'yiisoft/auth' => '*',
]),
params
из пакета yiisoft/http
:RemoveFromVendor::groups([Удалить группы
'yiisoft/http' => 'params',
]),
params
и common
из пакета yii-web
:RemoveFromVendor::groups([
'yiisoft/yii-web' => ['params', 'common'],
]),
#yiisoftMiddlewareDispatcher #МажорныйРелиз #Релиз
🎁 Yii Middleware Dispatcher 2.0.0
Изменён порядок выполнения мидлварей, задаваемых с помощью метода
⚡️ #yiisoftApp #yiisoftAppApi #yiisoftDemo #yiisoftDemoApi #yiisoftRouter
Соответствующие изменения внесены в приложения и пакеты:
Шаблон веб-приложения (PR),
Шаблон API-приложения (PR),
Демо веб-приложения (PR),
Демо API-приложения (PR),
Yii Router (PR).
🎁 Yii Middleware Dispatcher 2.0.0
Изменён порядок выполнения мидлварей, задаваемых с помощью метода
MiddlewareDispatcher::withMiddlewares()
: теперь мидлвари выполняются от первой к последней и обратно (PR).⚡️ #yiisoftApp #yiisoftAppApi #yiisoftDemo #yiisoftDemoApi #yiisoftRouter
Соответствующие изменения внесены в приложения и пакеты:
Шаблон веб-приложения (PR),
Шаблон API-приложения (PR),
Демо веб-приложения (PR),
Демо API-приложения (PR),
Yii Router (PR).
⚡️ #yiisoftForm
Улучшения в пакете Yii Form:
- добавили интерфейс коллекции ошибок
- для атрибута ID в элементах форм разрешено значение
- доработан виджет
- доработан виджет
- доработан виджет
Улучшения в пакете Yii Form:
- добавили интерфейс коллекции ошибок
FormErrorsInterface
и его реализацию FormErrors
, куда вынесли информацию об ошибках валидации (PR);- для атрибута ID в элементах форм разрешено значение
null
(PR);- доработан виджет
Hint
и добавлена подробная документация для него (PR);- доработан виджет
Label
и добавлена подробная документация для него (PR);- доработан виджет
Error
(PR).⚡️ #yiisoftView
Несколько улучшений в пакете Yii View (PR):
- добавлена простая реализация интерфейса
- добавлены методы
Последнее изменение позволит более удобно использовать
Несколько улучшений в пакете Yii View (PR):
- добавлена простая реализация интерфейса
ViewContextInterface
— класс ViewContext
, который принимает в конструкторе путь к контексту;- добавлены методы
View::withContextPath()
и WebView::withContextPath()
позволяющие задать контекст в виде пути к папке с представлениями.Последнее изменение позволит более удобно использовать
View
в виджетах:final class SidebarMenu extends Widget
{
public function __construct(
private View $view
) {
$this->view = $this->view->withContextPath(__DIR__);
}
protected function run(): string
{
return $this->view->render('menu');
}
}
⚡️ #yiisoftYiiDataview
Адаптировали пакет Yii Data Widgets к последним изменениям в Yii Router: заменили
Адаптировали пакет Yii Data Widgets к последним изменениям в Yii Router: заменили
CurrentRouter
на CurrentRouteInterface
(PR).Начали перераспределение классов из Yii Web.
✨ #yiisoftYiiHttp
Создан новый пакет Yii HTTP Application, в который перенесены из пакета Yii Web классы (PR):
-
-
-
-
-
-
-
⚡️ #yiisoftYiiRunnerWeb #yiisoftYiiRunnerHttp
Пакет Yii Web Runner переименован в Yii HTTP Runner (
-
-
-
⚡️ #yiisoftYiiRunnerRoadrunner
В пакете Yii RoadRunner Runner зависимость от
✨ #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) увеличили версию
В пакетах Yii RoadRunner Runner (PR) и Yii Debug Viewer (PR) увеличили версию
yiisoft/error-handler
до ^2.0
.⚡️ #yiisoftYiiDebugApi
Улучшения в Yii Debug API: обновили зависимости, актуализировали роуты и финализировали классы пакета (PR).
Улучшения в Yii Debug API: обновили зависимости, актуализировали роуты и финализировали классы пакета (PR).
⚡️ #yiisoftValidator
В правиле
В правиле
Url
из пакета Yii Validator исправлен паттерн для корректной работы валидации в HTML5 (PR).⚡️ #yiisoftForm
В пакете Yii Form для правила
В пакете Yii Form для правила
Url
при генерации HTML5 схемы сделаны регистронезависимыми (PR).⚡️ #yiisoftYiiSwagger
В пакете Yii Swagger подняли версию зависимости
В пакете Yii Swagger подняли версию зависимости
swagger-api/swagger-ui
до ^4.1
(PR).