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

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

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

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

🎁 Yii Error Handler 4.1

• Добавлена новая фабрика ответа Yiisoft\ErrorHandler\ThrowableResponseFactory с поддержкой провайдеров рендереров.

Например, можно создать свой провайдер для запросов из библиотеки htmx:

final readonly class HtmxRendererProvider implements RendererProviderInterface
{
public function get(ServerRequestInterface $request): ?ThrowableRendererInterface
{
if ($request->hasHeader('Hx-Request')) {
return new PlainTextRenderer();
}

return null;
}
}


И добавить его в конфигурацию фабрики:

ThrowableResponseFactoryInterface::class => [
'class' => ThrowableResponseFactory::class,
'__construct()' => [
'rendererProvider' => DynamicReference::to(
static fn(ContainerInterface $container) => new CompositeRendererProvider(
new HeadRendererProvider(),
new HtmxRendererProvider(),
new ContentTypeRendererProvider($container)
)
)
],
],


Yiisoft\ErrorHandler\Factory\ThrowableResponseFactory помечен как устаревший.

• Рендереры ответа для исключений теперь добавляют в заголовки ответ тип содержимого.

• Исправлено отображение аргументов функции в тёмном режиме.
👍4👾1
#yiisoftErrorHandler #МинорныйРелиз #Релиз

🎁 Yii Error Handler 4.2

• В HtmlRenderer добавлен параметр $traceLink, позволяющий задать формат ссылки на файл в IDE. Параметр $traceHeaderLine помечен устаревшим.

• Добавлен PHP-атрибут #[UserException], которым можно помечать пользовательские исключения.

• Выполнен небольшой рефакторинг шаблонов.
👍3👾2